<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:m="http://schemas.microsoft.com/office/2004/12/omml" 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 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Garamond;
        panose-1:2 2 4 4 3 3 1 1 8 3;}
/* 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;}
span.m6982846713117738442apple-tab-span
        {mso-style-name:m_6982846713117738442apple-tab-span;}
span.m6982846713117738442inbox-inbox-apple-tab-span
        {mso-style-name:m_6982846713117738442inbox-inbox-apple-tab-span;}
span.m6982846713117738442gmailmsg
        {mso-style-name:m_6982846713117738442gmail_msg;}
span.EmailStyle20
        {mso-style-type:personal-reply;
        font-family:"Garamond",serif;
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;}
@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-family:"Calibri",sans-serif;color:#1F497D">Let us not forget about the issues about this that would follow along with DST, as some areas do follow DST, others don’t, others stay permanently on DST, and so on. It’s a very
 intricate list of alterations every 6 months.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Garamond",serif;color:#1F497D">                                                                                                          
<o:p></o:p></span></p>
<p class="MsoNormal" style="text-autospace:none"><b><span style="font-size:10.0pt;font-family:"Garamond",serif;color:#3B3838">Ben Amick<o:p></o:p></span></b></p>
<p class="MsoNormal" style="text-autospace:none"><span style="font-size:9.0pt;font-family:"Garamond",serif;color:#3B3838">Telecom Analyst</span><span style="font-size:9.0pt;font-family:"Garamond",serif;color:#666666"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-family:"Garamond",serif;color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><b><span style="font-size:11.0pt;font-family:"Calibri",sans-serif">From:</span></b><span style="font-size:11.0pt;font-family:"Calibri",sans-serif"> cisco-voip [mailto:cisco-voip-bounces@puck.nether.net]
<b>On Behalf Of </b>Tanner Ezell<br>
<b>Sent:</b> Tuesday, January 24, 2017 9:12 AM<br>
<b>To:</b> Anthony Holloway <avholloway+cisco-voip@gmail.com><br>
<b>Cc:</b> cisco-voip@puck.nether.net<br>
<b>Subject:</b> Re: [cisco-voip] UCCX Script to get Time Zone by Area Code<o:p></o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">To add to that fun, some states have multiple timezones! <o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">I completely agree with Anthony regarding his first point, I myself have a cell phone with a phone number thats about 15 years old and I don't live anywhere near it. If you go this route, consider this as a helper, rather than an absolute
 and confirm with the user at some point.<o:p></o:p></p>
</div>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">On Mon, Jan 23, 2017 at 10:05 PM, Anthony Holloway <<a href="mailto:avholloway+cisco-voip@gmail.com" target="_blank">avholloway+cisco-voip@gmail.com</a>> wrote:<o:p></o:p></p>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<p class="MsoNormal">I have never done this before.<o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Seems to me like there are two major hurdles here:<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">1) How do you know that the caller is actually in that timezone at the time of the call?  For instance, I could be visiting a relative in another state/timezone, but using my cell to call in, OR I could be using their home phone, but trying
 to schedule service in my home timezone.  Furthermore, business SIP Trunks are national DID serviced, and I could call "from anywhere in the country" from my office SIP trunk.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">2) How will you keep the data current?  The best option is to let someone else keep the data current and subscribe to their web api service.  However, from a quick glance, no one is mapping area code to timezone, rather it seems to be lat/long
 to timezone.  So, you need to pull twice: 1) area code to lat/long (if that even exists), 2) lat/long to timezone.  But then what will you do when that service is discontinued?<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">I guess, if nothing else, you could roughly divide up the country's timezones by state borders, and for those border areas, they get to suffer +/- 1 hour to ease your administration.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">E.g., <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Scrap the small south west corner of North Dakota that's in Mountain Time and just make the entire ND state in Central Time.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">The only states you'd "really" be messing with are:<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">OR, ID, ND, SD, NE, KY, TN, FL<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">All the rest are practically, or exactly, in one single timezone.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Just make a decision on a heat map of population density, or timezone coverage to see which way you go in those borderline states.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">And now you can create mapping for state to timezone approximations with just four simple String variables, and four simple If steps like this:<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal"><b><span style="font-family:"Courier New"">String eastern_states = "NY,NJ,MD,etc.";</span></b><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><b><span style="font-family:"Courier New"">String central_states = "ND,SD,NE,etc..";</span></b><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><b><span style="font-family:"Courier New"">String mountain_states = "MT,AZ,ID,etc.";</span></b><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><b><span style="font-family:"Courier New"">String pacific_states = "WA,CA,NV,etc.";</span></b><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<div>
<p class="MsoNormal"><b><span style="font-family:"Courier New"">if (eastern_states.contains(calling_state)) {</span></b><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><b><span style="font-family:"Courier New"">  /* Eastern TimeZone State */</span></b><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><b><span style="font-family:"Courier New"">}</span></b><o:p></o:p></p>
</div>
</div>
<div>
<p class="MsoNormal"><b><span style="font-family:"Courier New"">if (central_states.contains(calling_state)) {</span></b><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><b><span style="font-family:"Courier New"">  /* Central TimeZone State */</span></b><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><b><span style="font-family:"Courier New"">}</span></b><o:p></o:p></p>
</div>
<div>
<div>
<p class="MsoNormal"><b><span style="font-family:"Courier New"">if (mountain_states.contains(calling_state)) {</span></b><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><b><span style="font-family:"Courier New"">  /* Mountain TimeZone State */</span></b><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><b><span style="font-family:"Courier New"">}</span></b><o:p></o:p></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal"><b><span style="font-family:"Courier New"">if (pacific_states.contains(calling_state)) {</span></b><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><b><span style="font-family:"Courier New"">  /* Pacific TimeZone State */</span></b><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><b><span style="font-family:"Courier New"">}</span></b><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal">But you'll still have to convert area code to state first , so, pull up the list of area codes by state on wikipedia:<o:p></o:p></p>
</div>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal"><a href="http://cp.mcafee.com/d/FZsSd6Qm7DQT1O8V4TsSyyO-OCe78CzASyyO-OCeuvpdEEILLfzDDT3qabxEVd7dXThKr8qHaNk54SRtxIrsKr9JGX3oSVsSPZT1PPP_nV4ttUsqejhOzRXBQSnTepKMZtxNPG8FHnjlKqenKl3PWApmU6CQjoUTvHEEzD61RTPhOrKr9PCJhbc-7695pbuxbu00UoAlBwlBioHlQl1BoP9yEwHYpmS0G36Ri7NB0yaxo_o2KN_hmRkfE1wjxavE2ENfp_gTqlblbCqOmbAaJMJZ0kIToHMd9_7wqrjKMO-r1vF6y0QJSBiRiVCIBziWq80C92g36y0oJ6iQPh1eFEw8_cQg0CiLCy02qMYQg42NEw48_FEw4GEurvudFIyIBaOc" target="_blank">https://en.wikipedia.org/wiki/List_of_North_American_Numbering_Plan_area_codes#United_States</a><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">And get to creating your area code to state mapping.  This one is a little bigger data set, so maybe not a String variable setup like above, but rather a nice little XML file?  TIP: Notepad++ Regex Find/Replace, or if you're feeling really
 progressive, periodic Python web scraping, which generates the XML for you.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<div>
<p class="MsoNormal"><b><span style="font-family:"Courier New""><?xml version="1.0" encoding="UTF-8"?></span></b><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><b><span style="font-family:"Courier New""><area_codes></span></b><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><b><span style="font-family:"Courier New""><area_code id="612">MN</area_code></span></b><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><b><span style="font-family:"Courier New"">...etc... </span></b><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><b><span style="font-family:"Courier New""></area_codes></span></b><o:p></o:p></p>
</div>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal"><b><span style="font-family:"Courier New"">calling_state = Get XML Document Data ("//area_code[@id="' + area_code + '"]")</span></b><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<div>
<div>
<p class="MsoNormal">On Mon, Jan 23, 2017 at 3:12 PM Matthew Loraditch <<a href="mailto:MLoraditch@heliontechnologies.com" target="_blank">MLoraditch@heliontechnologies.com</a>> wrote:<o:p></o:p></p>
</div>
</div>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<div>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Anyone ever written one of to get Time zone from Caller ID area code? I know how it would work, but hoping maybe there is a template (especially for the database side somewhere)<o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span class="m6982846713117738442gmailmsg"><span style="font-size:10.0pt;color:#1F497D">Matthew G. Loraditch – CCNP-Voice, CCNA-R&S, CCDA</span></span><span style="font-size:10.0pt;color:#1F497D"><br>
<span class="m6982846713117738442gmailmsg">Network Engineer</span><br>
<span class="m6982846713117738442gmailmsg">Direct Voice: <a href="tel:(443)%20541-1518" target="_blank">
443.541.1518</a></span></span><span style="color:#1F497D"><br>
</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><a href="http://cp.mcafee.com/d/2DRPoO86Qm7DQT1O8V4TsSyyO-OCe78CzASyyO-OCeuvpdEEILLfzDDT3qabxEVd7dXThKr8qHaNk54SRtxIrsKr9JGX3oSVsSPZT1PPP_nV4ttUsqejhOzRXBQSnTepKMZtxNPG8FHnjlKqenKl3PWApmU6CQPoUTvHEEzD61RTPhOrKr9PCJhbcasXJL8lGlVv2vDOH2vS9AE-WsjfdSBiRiVCIByV2Hsbvg5bdSaY3ivNU6CQXIcLCMnWhEwdbtFkJkKpH9oQKCy09ygA0NEw6bhAJcQgjGq82fPd409AHVEw0CIfd410Iq812fWq81aG7CTTzpXxCnasI" target="_blank"><span class="m6982846713117738442gmailmsg"><span style="font-size:8.0pt">Facebook</span></span></a><span class="m6982846713117738442gmailmsg"><span style="font-size:8.0pt;color:#1F497D">
 | </span></span><a href="http://cp.mcafee.com/d/1jWVIe3x0SyMY-CUeh78CXCQkmnSkNMV4QsCQkmnSkNPPX9J55BZVYsY-Urhhsd79EVLuWdPp3lpmawECSHIdzrBPpdJnor6TbCSvKUeuuvW_8zHL3zhOqekuLsKCO-VPdS7HIeeth5dqWqJPhOZOEuvkzaT0QSOr76XZt54sUMeK-qejtPpesRG9pAP4FP-fbU5_fBm09-NcTqlblbCqOmbAaJMJZ0kIToHMd9_7wqrjKMO-r1vF6y0QJSBiRiVCIBziWq80C92g36y0oJ6iQPh1eFEw8_cQg0CiLCy02qMYQg42NEw48_FEw4GEurvudWLT8EaVe" target="_blank"><span class="m6982846713117738442gmailmsg"><span style="font-size:8.0pt">Twitter</span></span></a><span class="m6982846713117738442gmailmsg"><span style="font-size:8.0pt;color:#1F497D">
 | </span></span><a href="http://cp.mcafee.com/d/avndy0Orhouvjs78zAjtPqabbXaoUsyqejqabbXaoVVZASyyO-Y-euvsdEEK6zAQsTLt6VIxGIH5gkjrlS6NJOVICSHIdzrBPrfTs7fffZvAhRTxNEVd7afnKnjpvsVCX3RS77eEyCJtdmVEVuVkffGhBrwqrodzzt-Kyyeso7nvd79KVIDeqR4IMFNYE5vgB3BYnmS1r2vDOH0LfX4UlfGhBZ2kUBjFRm5oqp5itlvdSBiRiVCIByV2Hsbvg5bdSaY3ivNU6CQXIcLCMnWhEwdbtFkJkKpH9oQKCy09ygA0NEw6bhAJcQgjGq82fPd409AHVEw0CIfd410Iq812fWq81aG7CTTzsDx8N0OJ" target="_blank"><span class="m6982846713117738442gmailmsg"><span style="font-size:8.0pt">LinkedIn</span></span></a><span class="m6982846713117738442gmailmsg"><span style="font-size:8.0pt;color:#1F497D">
 | </span></span><a href="http://cp.mcafee.com/d/FZsS92gOd21J5xVZdMsyehdTdEEILIFzxO9EVdEEILIFzDDSjqabbXPUVVZMSyyUqejhPuZQrCO6GOIl1hdJnor6TbCOrqKMSdKndI_tMsYY_R-h7nu76zAQsEZuVtdBZPCrIfnossWyaqRQRrCzBXBgY-F6lK1FJYSedTWWa8VNwttYQsCXCOsVHkiP5zSWshHkyv_bU04b-vaI9_oD2FZicLFyRqjErJaBGBPdpb5O5mUm-wamrIlU6A_zMddFTopvdwLQzh0qmXiFqFsPmiNFtd40j4x81zh0cmz9qpEwDkQg4vCq80j9nPh01douq821oQg24vQQg2lkfdLL6NjI5eiyBKfGg" target="_blank"><span class="m6982846713117738442gmailmsg"><span style="font-size:8.0pt">G+</span></span></a><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
</div>
</div>
</div>
</div>
<p class="MsoNormal">_______________________________________________<br>
cisco-voip mailing list<br>
<a href="mailto:cisco-voip@puck.nether.net" target="_blank">cisco-voip@puck.nether.net</a><br>
<a href="http://cp.mcafee.com/d/1jWVIg41ESyMY-CUeh78CXCQkmnSkNMV4QsCQkmnSkNPPX9J55BZVYsY-Urhhsd79EVLuWdPp3lpmawECSHIdzrBPpdJnor6TbCSvKUeuuvW_8zHL3zhOqekuLsKCO-VPdS7HIeeth5dqWqJPhOZOEuvkzaT0QSUr76XZt54sUMeK-qejtPpesRG9pyPtyL0QDYu1K2qKMM-l9OwXnbiFqFsPmiNKQGmGncRAIn8lrxrW0FpKNnwqj-f0QSDtxBYS2_id41FrJaBGBPdpb6BQQg1ci4w6d40NqcBFCy2tjh0h-pEw1cBvd404RxVEw85zh08h_jh09lgYS-Yrvce_" target="_blank">https://puck.nether.net/mailman/listinfo/cisco-voip</a><o:p></o:p></p>
</blockquote>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><br>
_______________________________________________<br>
cisco-voip mailing list<br>
<a href="mailto:cisco-voip@puck.nether.net">cisco-voip@puck.nether.net</a><br>
<a href="http://cp.mcafee.com/d/5fHCNASyMY-CUeh78CXCQkmnSkNMV4QsCQkmnSkNPPX9J55BZVYsY-Urhhsd79EVLuWdPp3lpmawECSHIdzrBPpdJnor6TbCSvKUeuuvW_8zHL3zhOqekuLsKCO-VPdS7HIeeth5dqWqJPhOZOEuvkzaT0QSedzzt-Kyyeso7nvd79KVIDeqR4INpKNnwqj-f0T1dnoovaAVgtHBFkJkKpH9oTqlblbCqOmbAaJMJZ0kIToHMd9_7wqrjKMO-r1vF6y0QJSBiRiVCIBziWq80C92g36y0oJ6iQPh1eFEw8_cQg0CiLCy02qMYQg42NEw48_FEw4GEurvudW_VmBBP8" target="_blank">https://puck.nether.net/mailman/listinfo/cisco-voip</a><o:p></o:p></p>
</blockquote>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
</body>
</html>


<BR>
Confidentiality Note: This message is intended for use only by the individual or entity to which it is addressed and may contain information that is privileged, confidential, and exempt from disclosure under applicable law. If the reader of this message is not the intended recipient or the employee or agent responsible for delivering the message to the intended recipient, you are hereby notified that any dissemination, distribution or copying of this communication is strictly prohibited. If you have received this communication in error, please contact the sender immediately and destroy the material in its entirety, whether electronic or hard copy. Thank you