[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


To: "'ietf-provreg@cafax.se'" <ietf-provreg@cafax.se>
From: "Hollenbeck, Scott" <shollenbeck@verisign.com>
Date: Wed, 31 Jul 2002 08:50:16 -0400
Sender: owner-ietf-provreg@cafax.se
Subject: RE: I-D on Uniform Treatment of Pending Action Notification in EP P

Hong et al:

Having spent some more time thinking about the suggestions presented in your
I-D, I now have a better feel for what you need and why I didn't
particularly care for the suggestion to add a <paNotify> element.  It's not
the "what" that concerned me, it was the "how", and my concern was driven
largely by a desire to use existing facilities and to treat notification
actions consistently.

We're already doing something similar when transfer actions are completed,
so I spent some time thinking about one of the options described in your
proposal -- use of the <resData> element.  I also thought it might be OK to
be a bit more verbose in the notification so that there can't be any
confusion when the client tries to synchronize the notification with their
own queue of pending activity.

Given that these pending actions operate on objects, just like transfers,
I'd like to suggest that we can do the notifications in the same way that
clients are notified of completed transfer activities.  That is, the
<resData> element can contain the information to identify the object, and
the few new elements needed to make this work get defined in the object
mappings.  A polled message could thus look like this:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation="urn:ietf:params:xml:ns:epp-1.0
     epp-1.0.xsd">
  <response>
    <result code="1301">
      <msg>Command completed successfully; ack to dequeue</msg>
    </result>
    <msgQ count="5" id="12345">
      <qDate>2000-06-08T22:00:00.0Z</qDate>
      <msg>Pending action completed successfully.</msg>
    </msgQ>
    <resData>
      <domain:paData
       xmlns:domain="urn:ietf:params:xml:ns:domain-1.0"
       xsi:schemaLocation="urn:ietf:params:xml:ns:domain-1.0
       domain-1.0.xsd">
        <domain:name paResult="1">example.tld</domain:name>
        <domain:clTRID>ABC-12345</domain:clTRID>
        <domain:svTRID>54321-XYZ</domain:svTRID>
        <domain:paDate>2000-06-08T21:59:00.0Z</domain:paDate>
      </domain:paData>
    </resData>
    <trID>
      <clTRID>BCD-23456</clTRID>
      <svTRID>65432-WXY</svTRID>
    </trID>
  </response>
</epp>

Note that the <msg> element in the <msgQ> tells the client what happened,
and everything the client needs to figure out which object is involved is
carried in the <domain:paData> element.  I thought it best to include both
TRIDs (with an optional clTRID) to exactly mirror the TRIDs returned in the
server's response to the original request.  The <paDate> element notes when
the action was actually completed, just as we note dates and times related
to transfers.

OK, hack away.  We might be able to get by with less info to identify the
client's transaction, but doing it this way is consistent with the transfer
notification mechanism and it provides some detail that might make client
reconciliation easier.

-Scott-

Home | Date list | Subject list