<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Notifications Script Error - OSError: [Errno 99] Cannot assign requested address in ArcGIS Notebooks Questions</title>
    <link>https://community.esri.com/t5/arcgis-notebooks-questions/notifications-script-error-oserror-errno-99-cannot/m-p/1270010#M628</link>
    <description>&lt;P&gt;Any solution on this? Did the ability to connect to external servers just get turned off or is there a workaround?&lt;/P&gt;</description>
    <pubDate>Tue, 21 Mar 2023 19:00:41 GMT</pubDate>
    <dc:creator>jtmouw_NCDOT</dc:creator>
    <dc:date>2023-03-21T19:00:41Z</dc:date>
    <item>
      <title>Notifications Script Error - OSError: [Errno 99] Cannot assign requested address</title>
      <link>https://community.esri.com/t5/arcgis-notebooks-questions/notifications-script-error-oserror-errno-99-cannot/m-p/233748#M40</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Consistently getting this error when trying to modify the example "Deploy Automatic Notifications" notebook. I am using gmail and have enabled "allow less secure apps" in the gmail settings. I can successfully send notifications from local python (2.7) using the same parameters but keep getting an error when using AGOL Notebook. Any suggestions?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;def send_email_smtp(recipients, message,
 subject="Message from your Notebook"):
 """Sends the `message` string to all of the emails in the 
 `recipients` list using the configured SMTP email server. 
 """
 try:
 # Set up server and credential variables
 
 smtp_server_url = "smtp.gmail.com"
 smtp_server_port = 587
 sender = "EmailAddress@gmail.com"
 username = "EmailAddress@gmail.com"
 password = secrets["smtp_email_password"]
 
 server = smtplib.SMTP(smtp_server_url, smtp_server_port)
 server.ehlo()
 server.starttls() # Needed if TLS is required w/ SMTP server
 server.login(username, password)
 except Exception as e:
 log.warning("Error setting up SMTP server, couldn't send " +
 f"message to {recipients}")
 raise e

 # For each recipient, construct the message and attempt to send
 did_succeed = True
 for recipient in recipients:
 try:
 message_body = '\r\n'.join(['To: {}'.format(recipient),
 'From: {}'.format(sender),
 'Subject: {}'.format(subject),
 '',
 '{}'.format(message)])
 message_body = message_body.encode("utf-8")
 server.sendmail(sender, [recipient], message_body)
 print(f"SMTP server returned success for sending email "\
 f"to {recipient}")
 except Exception as e:
 log.warning(f"Failed sending message to {recipient}")
 log.warning(e)
 did_succeed = False
 
 # Cleanup and return
 server.quit()
 return did_succeed&lt;/PRE&gt;&lt;P&gt;------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;send_email_smtp(recipients = ['DifferentEmail@gmail.com'],
 message = "Hello World!")&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;------------------------------------------------------------------------------------------------------&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Full error:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;DIV class="" style="color: #000000; background-color: #ffffff; padding: 0px;"&gt;&lt;DIV class="" style="color: #000000; background: #ffdddd; padding: 0.4em;"&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;Error setting up SMTP server, couldn't send message to ['DifferentEmail@gmail.com']&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class="" style="color: #000000; background-color: #ffffff; padding: 0px;"&gt;&lt;DIV class="" style="color: #333333; padding: 5px 2ex;"&gt;&lt;/DIV&gt;&lt;DIV class="" style="padding: 0px 0.4em;"&gt;&lt;/DIV&gt;&lt;DIV class="" style="color: #000000; padding: 0.4em;"&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;SPAN class="" style="color: #e75c58;"&gt;---------------------------------------------------------------------------&lt;/SPAN&gt;&lt;SPAN class="" style="color: #e75c58;"&gt;OSError&lt;/SPAN&gt;                                   Traceback (most recent call last)&lt;SPAN class="" style="color: #00a250;"&gt;&amp;lt;ipython-input-49-6f063c68c4ea&amp;gt;&lt;/SPAN&gt; in &lt;SPAN class="" style="color: #60c6c8;"&gt;&amp;lt;module&amp;gt;&lt;/SPAN&gt;&lt;SPAN class="" style="color: #007427; font-weight: bold;"&gt;      1&lt;/SPAN&gt; send_email_smtp(recipients = ['DifferentEmail@gmail.com'],&lt;SPAN class="" style="color: #00a250;"&gt;----&amp;gt; 2&lt;/SPAN&gt;&lt;SPAN class="" style="color: #e75c58;"&gt;                 message = "Hello World!")&lt;/SPAN&gt;&lt;SPAN class="" style="color: #00a250;"&gt;&amp;lt;ipython-input-48-2a35190fcbcd&amp;gt;&lt;/SPAN&gt; in &lt;SPAN class="" style="color: #60c6c8;"&gt;send_email_smtp&lt;/SPAN&gt;&lt;SPAN class="" style="color: #208ffb;"&gt;(recipients, message, subject)&lt;/SPAN&gt;&lt;SPAN class="" style="color: #007427; font-weight: bold;"&gt;     23&lt;/SPAN&gt;         log.warning("Error setting up SMTP server, couldn't send " +&lt;SPAN class="" style="color: #007427; font-weight: bold;"&gt;     24&lt;/SPAN&gt;                     f"message to {recipients}")&lt;SPAN class="" style="color: #00a250;"&gt;---&amp;gt; 25&lt;/SPAN&gt;&lt;SPAN class="" style="color: #e75c58;"&gt;         &lt;/SPAN&gt;&lt;SPAN class="" style="color: #00a250;"&gt;raise&lt;/SPAN&gt; e&lt;SPAN class="" style="color: #007427; font-weight: bold;"&gt;     26&lt;/SPAN&gt; &lt;SPAN class="" style="color: #007427; font-weight: bold;"&gt;     27&lt;/SPAN&gt;     &lt;SPAN class="" style="color: #e75c58;"&gt;# For each recipient, construct the message and attempt to send&lt;/SPAN&gt;&lt;SPAN class="" style="color: #00a250;"&gt;&amp;lt;ipython-input-48-2a35190fcbcd&amp;gt;&lt;/SPAN&gt; in &lt;SPAN class="" style="color: #60c6c8;"&gt;send_email_smtp&lt;/SPAN&gt;&lt;SPAN class="" style="color: #208ffb;"&gt;(recipients, message, subject)&lt;/SPAN&gt;&lt;SPAN class="" style="color: #007427; font-weight: bold;"&gt;     16&lt;/SPAN&gt;         password &lt;SPAN class="" style="color: #208ffb;"&gt;=&lt;/SPAN&gt; secrets&lt;SPAN class="" style="color: #208ffb;"&gt;[&lt;/SPAN&gt;&lt;SPAN class="" style="color: #208ffb;"&gt;"smtp_email_password"&lt;/SPAN&gt;&lt;SPAN class="" style="color: #208ffb;"&gt;]&lt;/SPAN&gt;&lt;SPAN class="" style="color: #007427; font-weight: bold;"&gt;     17&lt;/SPAN&gt; &lt;SPAN class="" style="color: #00a250;"&gt;---&amp;gt; 18&lt;/SPAN&gt;&lt;SPAN class="" style="color: #e75c58;"&gt;         &lt;/SPAN&gt;server &lt;SPAN class="" style="color: #208ffb;"&gt;=&lt;/SPAN&gt; smtplib&lt;SPAN class="" style="color: #208ffb;"&gt;.&lt;/SPAN&gt;SMTP&lt;SPAN class="" style="color: #208ffb;"&gt;(&lt;/SPAN&gt;smtp_server_url&lt;SPAN class="" style="color: #208ffb;"&gt;,&lt;/SPAN&gt; smtp_server_port&lt;SPAN class="" style="color: #208ffb;"&gt;)&lt;/SPAN&gt;&lt;SPAN class="" style="color: #007427; font-weight: bold;"&gt;     19&lt;/SPAN&gt;         server&lt;SPAN class="" style="color: #208ffb;"&gt;.&lt;/SPAN&gt;ehlo&lt;SPAN class="" style="color: #208ffb;"&gt;(&lt;/SPAN&gt;&lt;SPAN class="" style="color: #208ffb;"&gt;)&lt;/SPAN&gt;&lt;SPAN class="" style="color: #007427; font-weight: bold;"&gt;     20&lt;/SPAN&gt;         server&lt;SPAN class="" style="color: #208ffb;"&gt;.&lt;/SPAN&gt;starttls&lt;SPAN class="" style="color: #208ffb;"&gt;(&lt;/SPAN&gt;&lt;SPAN class="" style="color: #208ffb;"&gt;)&lt;/SPAN&gt; &lt;SPAN class="" style="color: #e75c58;"&gt;# Needed if TLS is required w/ SMTP server&lt;/SPAN&gt;&lt;SPAN class="" style="color: #00a250;"&gt;/opt/conda/lib/python3.6/smtplib.py&lt;/SPAN&gt; in &lt;SPAN class="" style="color: #60c6c8;"&gt;__init__&lt;/SPAN&gt;&lt;SPAN class="" style="color: #208ffb;"&gt;(self, host, port, local_hostname, timeout, source_address)&lt;/SPAN&gt;&lt;SPAN class="" style="color: #007427; font-weight: bold;"&gt;    249&lt;/SPAN&gt; &lt;SPAN class="" style="color: #007427; font-weight: bold;"&gt;    250&lt;/SPAN&gt;         &lt;SPAN class="" style="color: #00a250;"&gt;if&lt;/SPAN&gt; host&lt;SPAN class="" style="color: #208ffb;"&gt;:&lt;/SPAN&gt;&lt;SPAN class="" style="color: #00a250;"&gt;--&amp;gt; 251&lt;/SPAN&gt;&lt;SPAN class="" style="color: #e75c58;"&gt;             &lt;/SPAN&gt;&lt;SPAN class="" style="color: #208ffb;"&gt;(&lt;/SPAN&gt;code&lt;SPAN class="" style="color: #208ffb;"&gt;,&lt;/SPAN&gt; msg&lt;SPAN class="" style="color: #208ffb;"&gt;)&lt;/SPAN&gt; &lt;SPAN class="" style="color: #208ffb;"&gt;=&lt;/SPAN&gt; self&lt;SPAN class="" style="color: #208ffb;"&gt;.&lt;/SPAN&gt;connect&lt;SPAN class="" style="color: #208ffb;"&gt;(&lt;/SPAN&gt;host&lt;SPAN class="" style="color: #208ffb;"&gt;,&lt;/SPAN&gt; port&lt;SPAN class="" style="color: #208ffb;"&gt;)&lt;/SPAN&gt;&lt;SPAN class="" style="color: #007427; font-weight: bold;"&gt;    252&lt;/SPAN&gt;             &lt;SPAN class="" style="color: #00a250;"&gt;if&lt;/SPAN&gt; code &lt;SPAN class="" style="color: #208ffb;"&gt;!=&lt;/SPAN&gt; &lt;SPAN class="" style="color: #60c6c8;"&gt;220&lt;/SPAN&gt;&lt;SPAN class="" style="color: #208ffb;"&gt;:&lt;/SPAN&gt;&lt;SPAN class="" style="color: #007427; font-weight: bold;"&gt;    253&lt;/SPAN&gt;                 self&lt;SPAN class="" style="color: #208ffb;"&gt;.&lt;/SPAN&gt;close&lt;SPAN class="" style="color: #208ffb;"&gt;(&lt;/SPAN&gt;&lt;SPAN class="" style="color: #208ffb;"&gt;)&lt;/SPAN&gt;&lt;SPAN class="" style="color: #00a250;"&gt;/opt/conda/lib/python3.6/smtplib.py&lt;/SPAN&gt; in &lt;SPAN class="" style="color: #60c6c8;"&gt;connect&lt;/SPAN&gt;&lt;SPAN class="" style="color: #208ffb;"&gt;(self, host, port, source_address)&lt;/SPAN&gt;&lt;SPAN class="" style="color: #007427; font-weight: bold;"&gt;    334&lt;/SPAN&gt;         &lt;SPAN class="" style="color: #00a250;"&gt;if&lt;/SPAN&gt; self&lt;SPAN class="" style="color: #208ffb;"&gt;.&lt;/SPAN&gt;debuglevel &lt;SPAN class="" style="color: #208ffb;"&gt;&amp;gt;&lt;/SPAN&gt; &lt;SPAN class="" style="color: #60c6c8;"&gt;0&lt;/SPAN&gt;&lt;SPAN class="" style="color: #208ffb;"&gt;:&lt;/SPAN&gt;&lt;SPAN class="" style="color: #007427; font-weight: bold;"&gt;    335&lt;/SPAN&gt;             self&lt;SPAN class="" style="color: #208ffb;"&gt;.&lt;/SPAN&gt;_print_debug&lt;SPAN class="" style="color: #208ffb;"&gt;(&lt;/SPAN&gt;&lt;SPAN class="" style="color: #208ffb;"&gt;'connect:'&lt;/SPAN&gt;&lt;SPAN class="" style="color: #208ffb;"&gt;,&lt;/SPAN&gt; &lt;SPAN class="" style="color: #208ffb;"&gt;(&lt;/SPAN&gt;host&lt;SPAN class="" style="color: #208ffb;"&gt;,&lt;/SPAN&gt; port&lt;SPAN class="" style="color: #208ffb;"&gt;)&lt;/SPAN&gt;&lt;SPAN class="" style="color: #208ffb;"&gt;)&lt;/SPAN&gt;&lt;SPAN class="" style="color: #00a250;"&gt;--&amp;gt; 336&lt;/SPAN&gt;&lt;SPAN class="" style="color: #e75c58;"&gt;         &lt;/SPAN&gt;self&lt;SPAN class="" style="color: #208ffb;"&gt;.&lt;/SPAN&gt;sock &lt;SPAN class="" style="color: #208ffb;"&gt;=&lt;/SPAN&gt; self&lt;SPAN class="" style="color: #208ffb;"&gt;.&lt;/SPAN&gt;_get_socket&lt;SPAN class="" style="color: #208ffb;"&gt;(&lt;/SPAN&gt;host&lt;SPAN class="" style="color: #208ffb;"&gt;,&lt;/SPAN&gt; port&lt;SPAN class="" style="color: #208ffb;"&gt;,&lt;/SPAN&gt; self&lt;SPAN class="" style="color: #208ffb;"&gt;.&lt;/SPAN&gt;timeout&lt;SPAN class="" style="color: #208ffb;"&gt;)&lt;/SPAN&gt;&lt;SPAN class="" style="color: #007427; font-weight: bold;"&gt;    337&lt;/SPAN&gt;         self&lt;SPAN class="" style="color: #208ffb;"&gt;.&lt;/SPAN&gt;file &lt;SPAN class="" style="color: #208ffb;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="" style="color: #00a250;"&gt;None&lt;/SPAN&gt;&lt;SPAN class="" style="color: #007427; font-weight: bold;"&gt;    338&lt;/SPAN&gt;         &lt;SPAN class="" style="color: #208ffb;"&gt;(&lt;/SPAN&gt;code&lt;SPAN class="" style="color: #208ffb;"&gt;,&lt;/SPAN&gt; msg&lt;SPAN class="" style="color: #208ffb;"&gt;)&lt;/SPAN&gt; &lt;SPAN class="" style="color: #208ffb;"&gt;=&lt;/SPAN&gt; self&lt;SPAN class="" style="color: #208ffb;"&gt;.&lt;/SPAN&gt;getreply&lt;SPAN class="" style="color: #208ffb;"&gt;(&lt;/SPAN&gt;&lt;SPAN class="" style="color: #208ffb;"&gt;)&lt;/SPAN&gt;&lt;SPAN class="" style="color: #00a250;"&gt;/opt/conda/lib/python3.6/smtplib.py&lt;/SPAN&gt; in &lt;SPAN class="" style="color: #60c6c8;"&gt;_get_socket&lt;/SPAN&gt;&lt;SPAN class="" style="color: #208ffb;"&gt;(self, host, port, timeout)&lt;/SPAN&gt;&lt;SPAN class="" style="color: #007427; font-weight: bold;"&gt;    305&lt;/SPAN&gt;             self&lt;SPAN class="" style="color: #208ffb;"&gt;.&lt;/SPAN&gt;_print_debug&lt;SPAN class="" style="color: #208ffb;"&gt;(&lt;/SPAN&gt;&lt;SPAN class="" style="color: #208ffb;"&gt;'connect: to'&lt;/SPAN&gt;&lt;SPAN class="" style="color: #208ffb;"&gt;,&lt;/SPAN&gt; &lt;SPAN class="" style="color: #208ffb;"&gt;(&lt;/SPAN&gt;host&lt;SPAN class="" style="color: #208ffb;"&gt;,&lt;/SPAN&gt; port&lt;SPAN class="" style="color: #208ffb;"&gt;)&lt;/SPAN&gt;&lt;SPAN class="" style="color: #208ffb;"&gt;,&lt;/SPAN&gt; self&lt;SPAN class="" style="color: #208ffb;"&gt;.&lt;/SPAN&gt;source_address&lt;SPAN class="" style="color: #208ffb;"&gt;)&lt;/SPAN&gt;&lt;SPAN class="" style="color: #007427; font-weight: bold;"&gt;    306&lt;/SPAN&gt;         return socket.create_connection((host, port), timeout,&lt;SPAN class="" style="color: #00a250;"&gt;--&amp;gt; 307&lt;/SPAN&gt;&lt;SPAN class="" style="color: #e75c58;"&gt;                                         self.source_address)&lt;/SPAN&gt;&lt;SPAN class="" style="color: #007427; font-weight: bold;"&gt;    308&lt;/SPAN&gt; &lt;SPAN class="" style="color: #007427; font-weight: bold;"&gt;    309&lt;/SPAN&gt;     &lt;SPAN class="" style="color: #00a250;"&gt;def&lt;/SPAN&gt; connect&lt;SPAN class="" style="color: #208ffb;"&gt;(&lt;/SPAN&gt;self&lt;SPAN class="" style="color: #208ffb;"&gt;,&lt;/SPAN&gt; host&lt;SPAN class="" style="color: #208ffb;"&gt;=&lt;/SPAN&gt;&lt;SPAN class="" style="color: #208ffb;"&gt;'localhost'&lt;/SPAN&gt;&lt;SPAN class="" style="color: #208ffb;"&gt;,&lt;/SPAN&gt; port&lt;SPAN class="" style="color: #208ffb;"&gt;=&lt;/SPAN&gt;&lt;SPAN class="" style="color: #60c6c8;"&gt;0&lt;/SPAN&gt;&lt;SPAN class="" style="color: #208ffb;"&gt;,&lt;/SPAN&gt; source_address&lt;SPAN class="" style="color: #208ffb;"&gt;=&lt;/SPAN&gt;&lt;SPAN class="" style="color: #00a250;"&gt;None&lt;/SPAN&gt;&lt;SPAN class="" style="color: #208ffb;"&gt;)&lt;/SPAN&gt;&lt;SPAN class="" style="color: #208ffb;"&gt;:&lt;/SPAN&gt;&lt;SPAN class="" style="color: #00a250;"&gt;/opt/conda/lib/python3.6/socket.py&lt;/SPAN&gt; in &lt;SPAN class="" style="color: #60c6c8;"&gt;create_connection&lt;/SPAN&gt;&lt;SPAN class="" style="color: #208ffb;"&gt;(address, timeout, source_address)&lt;/SPAN&gt;&lt;SPAN class="" style="color: #007427; font-weight: bold;"&gt;    722&lt;/SPAN&gt; &lt;SPAN class="" style="color: #007427; font-weight: bold;"&gt;    723&lt;/SPAN&gt;     &lt;SPAN class="" style="color: #00a250;"&gt;if&lt;/SPAN&gt; err &lt;SPAN class="" style="color: #00a250;"&gt;is&lt;/SPAN&gt; &lt;SPAN class="" style="color: #00a250;"&gt;not&lt;/SPAN&gt; &lt;SPAN class="" style="color: #00a250;"&gt;None&lt;/SPAN&gt;&lt;SPAN class="" style="color: #208ffb;"&gt;:&lt;/SPAN&gt;&lt;SPAN class="" style="color: #00a250;"&gt;--&amp;gt; 724&lt;/SPAN&gt;&lt;SPAN class="" style="color: #e75c58;"&gt;         &lt;/SPAN&gt;&lt;SPAN class="" style="color: #00a250;"&gt;raise&lt;/SPAN&gt; err&lt;SPAN class="" style="color: #007427; font-weight: bold;"&gt;    725&lt;/SPAN&gt;     &lt;SPAN class="" style="color: #00a250;"&gt;else&lt;/SPAN&gt;&lt;SPAN class="" style="color: #208ffb;"&gt;:&lt;/SPAN&gt;&lt;SPAN class="" style="color: #007427; font-weight: bold;"&gt;    726&lt;/SPAN&gt;         &lt;SPAN class="" style="color: #00a250;"&gt;raise&lt;/SPAN&gt; error&lt;SPAN class="" style="color: #208ffb;"&gt;(&lt;/SPAN&gt;&lt;SPAN class="" style="color: #208ffb;"&gt;"getaddrinfo returns an empty list"&lt;/SPAN&gt;&lt;SPAN class="" style="color: #208ffb;"&gt;)&lt;/SPAN&gt;&lt;SPAN class="" style="color: #00a250;"&gt;/opt/conda/lib/python3.6/socket.py&lt;/SPAN&gt; in &lt;SPAN class="" style="color: #60c6c8;"&gt;create_connection&lt;/SPAN&gt;&lt;SPAN class="" style="color: #208ffb;"&gt;(address, timeout, source_address)&lt;/SPAN&gt;&lt;SPAN class="" style="color: #007427; font-weight: bold;"&gt;    711&lt;/SPAN&gt;             &lt;SPAN class="" style="color: #00a250;"&gt;if&lt;/SPAN&gt; source_address&lt;SPAN class="" style="color: #208ffb;"&gt;:&lt;/SPAN&gt;&lt;SPAN class="" style="color: #007427; font-weight: bold;"&gt;    712&lt;/SPAN&gt;                 sock&lt;SPAN class="" style="color: #208ffb;"&gt;.&lt;/SPAN&gt;bind&lt;SPAN class="" style="color: #208ffb;"&gt;(&lt;/SPAN&gt;source_address&lt;SPAN class="" style="color: #208ffb;"&gt;)&lt;/SPAN&gt;&lt;SPAN class="" style="color: #00a250;"&gt;--&amp;gt; 713&lt;/SPAN&gt;&lt;SPAN class="" style="color: #e75c58;"&gt;             &lt;/SPAN&gt;sock&lt;SPAN class="" style="color: #208ffb;"&gt;.&lt;/SPAN&gt;connect&lt;SPAN class="" style="color: #208ffb;"&gt;(&lt;/SPAN&gt;sa&lt;SPAN class="" style="color: #208ffb;"&gt;)&lt;/SPAN&gt;&lt;SPAN class="" style="color: #007427; font-weight: bold;"&gt;    714&lt;/SPAN&gt;             &lt;SPAN class="" style="color: #e75c58;"&gt;# Break explicitly a reference cycle&lt;/SPAN&gt;&lt;SPAN class="" style="color: #007427; font-weight: bold;"&gt;    715&lt;/SPAN&gt;             err &lt;SPAN class="" style="color: #208ffb;"&gt;=&lt;/SPAN&gt; &lt;SPAN class="" style="color: #00a250;"&gt;None&lt;/SPAN&gt;&lt;SPAN class="" style="color: #e75c58;"&gt;OSError&lt;/SPAN&gt;: [Errno 99] Cannot assign requested address&lt;/PRE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 16:13:19 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-notebooks-questions/notifications-script-error-oserror-errno-99-cannot/m-p/233748#M40</guid>
      <dc:creator>RonnieRagains</dc:creator>
      <dc:date>2021-12-12T16:13:19Z</dc:date>
    </item>
    <item>
      <title>Re: Notifications Script Error - OSError: [Errno 99] Cannot assign requested address</title>
      <link>https://community.esri.com/t5/arcgis-notebooks-questions/notifications-script-error-oserror-errno-99-cannot/m-p/233749#M41</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Ronnie,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Sorry for this - currently we do not allow ArcGIS Online Notebooks to connect to external servers, and so we don't allow connections to email servers. This sample was incorrectly included with Online and will soon be modified to reflect that. To programmatically&lt;SPAN style="color: #222222; background-color: #ffffff; font-size: 16px;"&gt;&amp;nbsp;&lt;/SPAN&gt;send out emails we recommend the use of a service such as &lt;EM&gt;Email by&lt;/EM&gt; &lt;EM&gt;Zapier&lt;/EM&gt;,&amp;nbsp;or&amp;nbsp;&lt;EM&gt;Twilio SendGrid&lt;/EM&gt;. The use of Zapier to&amp;nbsp;post to social media is described in the same sample notebook under the &lt;STRONG&gt;Zapier&lt;/STRONG&gt; heading, and you may use that as a starting point to send out emails via POST, GET, or PUT requests.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://zapier.com/help/create/email-and-text-messages/send-emails-in-zaps"&gt;Here's the link to &lt;EM&gt;Email by Zapier&lt;/EM&gt;'s documentation.&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A href="https://zapier.com/help/create/code-webhooks/trigger-zaps-from-webhooks"&gt;Here's the link to using webhooks to trigger &lt;EM&gt;Zaps&amp;nbsp;&lt;/EM&gt;in&amp;nbsp;&lt;EM&gt;Zapier&lt;/EM&gt;.&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Let me know if you have anymore questions.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Josh&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 18 May 2020 17:20:36 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-notebooks-questions/notifications-script-error-oserror-errno-99-cannot/m-p/233749#M41</guid>
      <dc:creator>Anonymous User</dc:creator>
      <dc:date>2020-05-18T17:20:36Z</dc:date>
    </item>
    <item>
      <title>Re: Notifications Script Error - OSError: [Errno 99] Cannot assign requested address</title>
      <link>https://community.esri.com/t5/arcgis-notebooks-questions/notifications-script-error-oserror-errno-99-cannot/m-p/233750#M42</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I just wasted several hours trying to debug a sample that cannot work.&amp;nbsp; You should update the description to say that you cannot connect to an external server from AGOL.&amp;nbsp; If a connection to an external server is not allowed, why would a POST, GET or PUT from a notebook on AGOL to Zapier or Twilio work?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 04 Sep 2020 08:45:16 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-notebooks-questions/notifications-script-error-oserror-errno-99-cannot/m-p/233750#M42</guid>
      <dc:creator>PatRiley</dc:creator>
      <dc:date>2020-09-04T08:45:16Z</dc:date>
    </item>
    <item>
      <title>Re: Notifications Script Error - OSError: [Errno 99] Cannot assign requested address</title>
      <link>https://community.esri.com/t5/arcgis-notebooks-questions/notifications-script-error-oserror-errno-99-cannot/m-p/1056900#M290</link>
      <description>&lt;P&gt;Hey Josh,&lt;/P&gt;&lt;P&gt;Any update on this? Does it still&amp;nbsp;&lt;SPAN&gt;not allow ArcGIS Online Notebooks to connect to external servers? You are suggesting Zapier, my question is can I use Power automate to send an email? Is that feasible?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Thanks,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Julie&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 11 May 2021 21:21:41 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-notebooks-questions/notifications-script-error-oserror-errno-99-cannot/m-p/1056900#M290</guid>
      <dc:creator>JulieK</dc:creator>
      <dc:date>2021-05-11T21:21:41Z</dc:date>
    </item>
    <item>
      <title>Re: Notifications Script Error - OSError: [Errno 99] Cannot assign requested address</title>
      <link>https://community.esri.com/t5/arcgis-notebooks-questions/notifications-script-error-oserror-errno-99-cannot/m-p/1194382#M558</link>
      <description>&lt;P&gt;Encountering this same error on July 2022. The funny thing is that it worked since I created the script, 4 or 5 months ago, until last Friday (July 15th, 2022). Fails both using smtp-mail.outlook.com and smtp.gmail.com. The same script works with no issues when executed locally.&lt;/P&gt;</description>
      <pubDate>Thu, 21 Jul 2022 12:31:18 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-notebooks-questions/notifications-script-error-oserror-errno-99-cannot/m-p/1194382#M558</guid>
      <dc:creator>Jordi-Monk-Developer</dc:creator>
      <dc:date>2022-07-21T12:31:18Z</dc:date>
    </item>
    <item>
      <title>Re: Notifications Script Error - OSError: [Errno 99] Cannot assign requested address</title>
      <link>https://community.esri.com/t5/arcgis-notebooks-questions/notifications-script-error-oserror-errno-99-cannot/m-p/1196508#M560</link>
      <description>&lt;P&gt;I am having the exact same issue as you. I was sending emails with information from feature layers using smtp.gmail.com and it had worked since January 2022. However, it failed on its scheduled run on July 17th and I have not been able to get it to run since. I was also able to successfully run the script locally.&amp;nbsp;&lt;/P&gt;&lt;P&gt;I hope someone from Esri can weigh in on this. It doesn't make any sense that it was working for the past six months and still works locally, but it suddenly stopped working two weeks ago. This is especially confusing because the above post from&amp;nbsp;@Anonymous User&amp;nbsp;says that connections to external servers (including email servers) is not supported, but I had been able to connect to an smtp instance up until two weeks ago.&lt;/P&gt;</description>
      <pubDate>Wed, 27 Jul 2022 18:47:25 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-notebooks-questions/notifications-script-error-oserror-errno-99-cannot/m-p/1196508#M560</guid>
      <dc:creator>pmccord</dc:creator>
      <dc:date>2022-07-27T18:47:25Z</dc:date>
    </item>
    <item>
      <title>Re: Notifications Script Error - OSError: [Errno 99] Cannot assign requested address</title>
      <link>https://community.esri.com/t5/arcgis-notebooks-questions/notifications-script-error-oserror-errno-99-cannot/m-p/1270010#M628</link>
      <description>&lt;P&gt;Any solution on this? Did the ability to connect to external servers just get turned off or is there a workaround?&lt;/P&gt;</description>
      <pubDate>Tue, 21 Mar 2023 19:00:41 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-notebooks-questions/notifications-script-error-oserror-errno-99-cannot/m-p/1270010#M628</guid>
      <dc:creator>jtmouw_NCDOT</dc:creator>
      <dc:date>2023-03-21T19:00:41Z</dc:date>
    </item>
  </channel>
</rss>

