<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:p="urn:schemas-microsoft-com:office:powerpoint" xmlns:a="urn:schemas-microsoft-com:office:access" xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns:s="uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882" xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema" xmlns:b="urn:schemas-microsoft-com:office:publisher" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:c="urn:schemas-microsoft-com:office:component:spreadsheet" xmlns:odc="urn:schemas-microsoft-com:office:odc" xmlns:oa="urn:schemas-microsoft-com:office:activation" xmlns:html="http://www.w3.org/TR/REC-html40" xmlns:q="http://schemas.xmlsoap.org/soap/envelope/" xmlns:rtc="http://microsoft.com/officenet/conferencing" xmlns:D="DAV:" xmlns:Repl="http://schemas.microsoft.com/repl/" xmlns:mt="http://schemas.microsoft.com/sharepoint/soap/meetings/" xmlns:x2="http://schemas.microsoft.com/office/excel/2003/xml" xmlns:ppda="http://www.passport.com/NameSpace.xsd" xmlns:ois="http://schemas.microsoft.com/sharepoint/soap/ois/" xmlns:dir="http://schemas.microsoft.com/sharepoint/soap/directory/" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:dsp="http://schemas.microsoft.com/sharepoint/dsp" xmlns:udc="http://schemas.microsoft.com/data/udc" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:sub="http://schemas.microsoft.com/sharepoint/soap/2002/1/alerts/" xmlns:ec="http://www.w3.org/2001/04/xmlenc#" xmlns:sp="http://schemas.microsoft.com/sharepoint/" xmlns:sps="http://schemas.microsoft.com/sharepoint/soap/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:udcs="http://schemas.microsoft.com/data/udc/soap" xmlns:udcxf="http://schemas.microsoft.com/data/udc/xmlfile" xmlns:udcp2p="http://schemas.microsoft.com/data/udc/parttopart" xmlns:wf="http://schemas.microsoft.com/sharepoint/soap/workflow/" xmlns:dsss="http://schemas.microsoft.com/office/2006/digsig-setup" xmlns:dssi="http://schemas.microsoft.com/office/2006/digsig" xmlns:mdssi="http://schemas.openxmlformats.org/package/2006/digital-signature" xmlns:mver="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns:mrels="http://schemas.openxmlformats.org/package/2006/relationships" xmlns:spwp="http://microsoft.com/sharepoint/webpartpages" xmlns:ex12t="http://schemas.microsoft.com/exchange/services/2006/types" xmlns:ex12m="http://schemas.microsoft.com/exchange/services/2006/messages" xmlns:pptsl="http://schemas.microsoft.com/sharepoint/soap/SlideLibrary/" xmlns:spsl="http://microsoft.com/webservices/SharePointPortalServer/PublishedLinksService" xmlns:Z="urn:schemas-microsoft-com:" xmlns:st="" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 12 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p
        {mso-style-priority:99;
        margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
span.EmailStyle18
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=EN-US link=blue vlink=purple><div class=WordSection1><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Thank you everyone for the replies. <o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>I did find what I was looking for. <o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>A sip invite from the PBX to the “device” generates a scrub of the DNC database, no match sends a refer back to us (the PBX) and is sent outbound to PSTN. <o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>A match connects to audio notifying the agent that dialed the number that it was a DNC and “please hang up and dial another number”. <o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><div><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal><b><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> voiceops-bounces@voiceops.org [mailto:voiceops-bounces@voiceops.org] <b>On Behalf Of </b>Jason L. Nesheim<br><b>Sent:</b> Friday, December 02, 2011 8:02 PM<br><b>To:</b> Jay Hennigan<br><b>Cc:</b> voiceops@voiceops.org<br><b>Subject:</b> Re: [VoiceOps] Do Not Call list<o:p></o:p></span></p></div></div><p class=MsoNormal><o:p> </o:p></p><div><p class=MsoNormal style='margin-bottom:12.0pt'><span style='color:black'>One route you could take is using an ENUM or SIP redirect server to query the destination number against a database and return a route that blocks the call.  There are a quire a few directions could go on the ENUM side to do this.  Something along the lines of NetNumber is one option, otherwise you can do something in house to store and query the database.  It's possible to put together a fairly cheap and reliable database backed ENUM platform with something as simple as a pair of servers running a database backed DNS (PowerDNS is an option) and replicated MySQL/PostgreSQL.  With a decent amount of RAM you could store the entire database in memory cache for quick response times.<o:p></o:p></span></p><div><div><div><p class=MsoNormal><span style='color:black'>-- <br>Jason Nesheim<o:p></o:p></span></p></div></div></div><p class=MsoNormal><span style='color:black'><br><br>----- Original Message -----<br>From: "Jay Hennigan" <jay@west.net><br>To: voiceops@voiceops.org<br>Sent: Friday, December 2, 2011 3:48:53 PM<br>Subject: Re: [VoiceOps] Do Not Call list<br><br>On 12/2/11 3:26 PM, Jimmy Hess wrote:<br><br>> Since you're making a call to an outside service, then you'll have a<br>> question to deal with...<br>> what do you want to happen if the remote server can't answer your<br>> query,  your internet connectivity<br>> to the remote server has an issue, or the remote service is taking way<br>> too long to respond.<br>> <br>> Failed query, then allow?  Failed query, then block?   Failed query,<br>> then retry forever?<br>> If the database server is temporarily unavailable,  then you have to<br>> pick how you want to fail.<br>> <br>> Careful about the risk of potentially making an outgoing 911 call  sit<br>> and wait  10 minutes on<br>> a query to a remote database,  to see if the call will be allowed, b/c<br>> database happens to be<br>> experiencing a speed issue at the time.<br><br>Yeah, whole different scenario with a human agent vs. an autodialer.<br><br>Presumably these are agents with a SIP trunk to a telemarketing system<br>and not generic business users.  With the Sansay you can deploy a<br>blocking server based on the resource, so 911 and other service codes<br>would not use it, only NPA-NXX-XXXX.<br><br>If the trunk is used only for outbound telespam^H^H^H^Hmarketing, then<br>logically you would probably want to reject on unreachable.  Sansay is<br>pretty flexible in terms of ability to use multiple blocking servers.<br><br><br>--<br>Jay Hennigan - CCIE #7880 - Network Engineering - jay@impulse.net<br>Impulse Internet Service  -  http://www.impulse.net/<br>Your local telephone and internet company - 805 884-6323 - WB6RDV<br>_______________________________________________<br>VoiceOps mailing list<br>VoiceOps@voiceops.org<br>https://puck.nether.net/mailman/listinfo/voiceops<o:p></o:p></span></p></div></div></body></html>