cozaepp 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (57) hide show
  1. data/.gitignore +18 -0
  2. data/Gemfile +4 -0
  3. data/LICENSE +22 -0
  4. data/README.md +86 -0
  5. data/Rakefile +2 -0
  6. data/cozaepp.gemspec +19 -0
  7. data/erb/apply_clienthold.erb +13 -0
  8. data/erb/check.erb +14 -0
  9. data/erb/check_contact.erb +14 -0
  10. data/erb/check_domain.erb +11 -0
  11. data/erb/check_host.erb +14 -0
  12. data/erb/create_contact.erb +31 -0
  13. data/erb/create_domain.erb +20 -0
  14. data/erb/create_domain_with_host.erb +25 -0
  15. data/erb/create_domain_with_ns.erb +20 -0
  16. data/erb/create_host.erb +13 -0
  17. data/erb/create_testregistrar.erb +27 -0
  18. data/erb/delete_contact.erb +11 -0
  19. data/erb/delete_domain.erb +12 -0
  20. data/erb/delete_host.erb +11 -0
  21. data/erb/epp_metadata.erb +18 -0
  22. data/erb/info.erb +12 -0
  23. data/erb/info_balance.erb +15 -0
  24. data/erb/info_contact.erb +15 -0
  25. data/erb/info_contact_coza.erb +20 -0
  26. data/erb/info_contact_response.erb +49 -0
  27. data/erb/info_domain.erb +12 -0
  28. data/erb/info_host.erb +12 -0
  29. data/erb/login.erb +18 -0
  30. data/erb/logout.erb +8 -0
  31. data/erb/pack.erb +8 -0
  32. data/erb/poll.erb +8 -0
  33. data/erb/poll_ack.erb +8 -0
  34. data/erb/remove_clienthold.erb +13 -0
  35. data/erb/renew.erb +13 -0
  36. data/erb/set_autorenew.erb +15 -0
  37. data/erb/transfer_approve.erb +11 -0
  38. data/erb/transfer_cancel.erb +11 -0
  39. data/erb/transfer_domain.erb +11 -0
  40. data/erb/transfer_query.erb +11 -0
  41. data/erb/transfer_reject.erb +11 -0
  42. data/erb/update_contact.erb +33 -0
  43. data/erb/update_domain.erb +33 -0
  44. data/erb/update_domain_ns.erb +17 -0
  45. data/erb/update_domain_registrant.erb +13 -0
  46. data/erb/update_host.erb +23 -0
  47. data/lib/cozaepp/version.rb +3 -0
  48. data/lib/cozaepp.rb +364 -0
  49. data/xsd/contact-1.0.xsd +270 -0
  50. data/xsd/coza-contact-1.0.xsd +72 -0
  51. data/xsd/coza-domain-1.0.xsd +84 -0
  52. data/xsd/domain-1.0.xsd +432 -0
  53. data/xsd/epp-1.0.xsd +375 -0
  54. data/xsd/eppcom-1.0.xsd +97 -0
  55. data/xsd/host-1.0.xsd +238 -0
  56. data/xsd/secDNS-1.1.xsd +134 -0
  57. metadata +117 -0
data/.gitignore ADDED
@@ -0,0 +1,18 @@
1
+ *.gem
2
+ *.rbc
3
+ *.conf
4
+ .bundle
5
+ .config
6
+ .yardoc
7
+ Gemfile.lock
8
+ InstalledFiles
9
+ _yardoc
10
+ coverage
11
+ doc/
12
+ lib/bundler/man
13
+ pkg
14
+ rdoc
15
+ spec/reports
16
+ test/tmp
17
+ test/version_tmp
18
+ tmp
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # Specify your gem's dependencies in cozaepp.gemspec
4
+ gemspec
data/LICENSE ADDED
@@ -0,0 +1,22 @@
1
+ Copyright (c) 2012 Todor Genov
2
+
3
+ MIT License
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ "Software"), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,86 @@
1
+ # Cozaepp
2
+
3
+ A Ruby API for passing messages to Uniforum's EPP-based co.za registry
4
+
5
+ EPP extensions as per https://www.registry.net.za/content.php?wiki=1&contentid=112&title=What%20is%20EPP?
6
+
7
+ TODO: Some of the "Transfer" operations are yet to be implemented
8
+
9
+ ## Installation
10
+
11
+ Add this line to your application's Gemfile:
12
+
13
+ gem 'cozaepp'
14
+
15
+ And then execute:
16
+
17
+ $ bundle
18
+
19
+ Or install it yourself as:
20
+
21
+ $ gem install cozaepp
22
+
23
+ ## Usage
24
+
25
+ require "cozaepp"
26
+
27
+ epp = CozaEPP::Client.new("some.hostname.co.za","username","password")
28
+ epp.login
29
+
30
+ List of all public instance methods:
31
+
32
+ ack(messageId) click to toggle source
33
+
34
+ apply_clienthold(domainName)
35
+
36
+ create_contact(contactId, contactName, contactOrg, contactStreet1, contactStreet2, contactStreet3, contactCity, contactProvince, contactPostalcode, contactCountry, contactTel, contactFax, contactEmail, contactPassword )
37
+
38
+ create_domain_with_host(domainName, registrant, nsHostname1, nsipv4Address1, nsipv6Address1, nsHostname2, nsipv4Address2, nsipv6Address2, domainSecret )
39
+
40
+ create_domain_with_ns(domainName, registrant, nsHostname1, nsHostname2, domainSecret )
41
+
42
+ create_host(serverHostname, ipv4Address, ipv6Address=nil)
43
+
44
+ delete_contact(contactId)
45
+
46
+ delete_domain(domainName)
47
+
48
+ info_balance(contactId)
49
+
50
+ info_contact(contactId,contactPassword)
51
+
52
+ info_contact_linkeddomains(contactId,contactPassword)
53
+
54
+ info_domain(domainName)
55
+
56
+ login()
57
+
58
+ logout()
59
+
60
+ poll()
61
+
62
+ remove_clienthold(domainName)
63
+
64
+ renew_domain(domainName,curExpiryDate)
65
+
66
+ set_autorenew(domainName, autoRenew)
67
+ -autorenew in [ "true", "false"]
68
+
69
+ transfer_approve(domainName)
70
+
71
+ transfer_domain(domainName)
72
+
73
+ update_contact(contactId, contactName, contactOrg, contactStreet1, contactStreet2, contactStreet3, contactCity, contactProvince, contactPostalcode, contactCountry, contactTel, contactFax, contactEmail, contactPassword )
74
+
75
+ update_domain_ns(domainName, nsHostname1, nsipv4Address1, nsipv6Address1)
76
+
77
+ update_domain_registrant(domainName,registrant)
78
+
79
+
80
+ ## Contributing
81
+
82
+ 1. Fork it
83
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
84
+ 3. Commit your changes (`git commit -am 'Added some feature'`)
85
+ 4. Push to the branch (`git push origin my-new-feature`)
86
+ 5. Create new Pull Request
data/Rakefile ADDED
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env rake
2
+ require "bundler/gem_tasks"
data/cozaepp.gemspec ADDED
@@ -0,0 +1,19 @@
1
+ # -*- encoding: utf-8 -*-
2
+ require File.expand_path('../lib/cozaepp/version', __FILE__)
3
+
4
+ Gem::Specification.new do |gem|
5
+ gem.authors = ["Todor Genov"]
6
+ gem.email = ["todor@subnet.co.za"]
7
+ gem.description = %q{API to Uniforum's EPP service}
8
+ gem.summary = %q{API to Uniforum's EPP service}
9
+ gem.homepage = "http://github.com/tgenov/cozaepp"
10
+
11
+ gem.files = `git ls-files`.split($\)
12
+ gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
13
+ gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
14
+ gem.name = "cozaepp"
15
+ gem.require_paths = ["lib"]
16
+ gem.version = Cozaepp::VERSION
17
+
18
+ gem.add_dependency("epp", ">= 1.4.0")
19
+ end
@@ -0,0 +1,13 @@
1
+ <epp:epp xmlns:epp="urn:ietf:params:xml:ns:epp-1.0"
2
+ xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
3
+ <epp:command>
4
+ <epp:update>
5
+ <domain:update>
6
+ <domain:name><%= domainName %></domain:name>
7
+ <domain:add>
8
+ <domain:status s="clientHold"/>
9
+ </domain:add>
10
+ </domain:update>
11
+ </epp:update>
12
+ </epp:command>
13
+ </epp:epp>
data/erb/check.erb ADDED
@@ -0,0 +1,14 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
3
+ <command>
4
+ <check>
5
+ <obj:check xmlns:obj="urn:ietf:params:xml:ns:obj">
6
+ <obj:name>test1.test.dnservices.co.za</obj:name>
7
+ <obj:name>test2.test.dnservices.co.za</obj:name>
8
+ <obj:name>test3.test.dnservices.co.za</obj:name>
9
+ </obj:check>
10
+ </check>
11
+ <clTRID>ABC-12346</clTRID>
12
+ </command>
13
+ </epp>
14
+
@@ -0,0 +1,14 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
3
+ <command>
4
+ <check>
5
+ <contact:check
6
+ xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
7
+ <contact:id>sh8013</contact:id>
8
+ <contact:id>sah8013</contact:id>
9
+ <contact:id>8013sah</contact:id>
10
+ </contact:check>
11
+ </check>
12
+ <clTRID>ABC-12345</clTRID>
13
+ </command>
14
+ </epp>
@@ -0,0 +1,11 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
3
+ <command>
4
+ <check>
5
+ <domain:check xmlns:domain="urn:ietf:params:xml:ns:domain-1.0">
6
+ <domain:name><%= domainName %></domain:name>
7
+ </domain:check>
8
+ </check>
9
+ <clTRID><%= cltrid %></clTRID>
10
+ </command>
11
+ </epp>
@@ -0,0 +1,14 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
3
+ <command>
4
+ <check>
5
+ <host:check xmlns:host="urn:ietf:params:xml:ns:host-1.0">
6
+ <host:name>ns1.example.test.dnservices.co.za</host:name>
7
+ <host:name>ns2.example.test.dnservices.co.za</host:name>
8
+ <host:name>ns3.example.test.dnservices.co.za</host:name>
9
+ </host:check>
10
+ </check>
11
+ <clTRID>ABC-12345</clTRID>
12
+ </command>
13
+ </epp>
14
+
@@ -0,0 +1,31 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <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">
3
+ <command>
4
+ <create>
5
+ <contact:create xmlns:contact="urn:ietf:params:xml:ns:contact-1.0" xsi:schemaLocation="urn:ietf:params:xml:ns:contact-1.0 contact-1.0.xsd">
6
+ <contact:id><%= contactId %></contact:id>
7
+ <contact:postalInfo type="loc">
8
+ <contact:name><%= contactName %></contact:name>
9
+ <contact:org><%= contactOrg %></contact:org>
10
+ <contact:addr>
11
+ <contact:street><%= contactStreet1 %></contact:street>
12
+ <contact:street><%= contactStreet2 %></contact:street>
13
+ <contact:street><%= contactStreet3 %></contact:street>
14
+ <contact:city><%= contactCity %></contact:city>
15
+ <contact:sp><%= contactProvince %></contact:sp>
16
+ <contact:pc><%= contactPostalcode %></contact:pc>
17
+ <contact:cc><%= contactCountry %></contact:cc>
18
+ </contact:addr>
19
+ </contact:postalInfo>
20
+ <contact:voice><%= contactTel %></contact:voice>
21
+ <contact:fax x="01"><%= contactFax %></contact:fax>
22
+ <contact:email><%= contactEmail %></contact:email>
23
+ <contact:authInfo>
24
+ <contact:pw><%= contactPassword %></contact:pw>
25
+ </contact:authInfo>
26
+ </contact:create>
27
+ </create>
28
+ <clTRID><%= cltrid %></clTRID>
29
+ </command>
30
+ </epp>
31
+
@@ -0,0 +1,20 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <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">
3
+ <command>
4
+ <create>
5
+ <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0" xsi:schemaLocation="urn:ietf:params:xml:ns:domain-1.0 domain-1.0.xsd">
6
+ <domain:name><%= domainName %></domain:name>
7
+ <domain:ns>
8
+ <domain:hostObj><%= nsHostname1 %></domain:hostObj>
9
+ <domain:hostObj><%= nsHostname2 %></domain:hostObj>
10
+ </domain:ns>
11
+ <domain:registrant><%= registrant %></domain:registrant>
12
+ <domain:authInfo>
13
+ <domain:pw><%= domainSecret %></domain:pw>
14
+ </domain:authInfo>
15
+ </domain:create>
16
+ </create>
17
+ <clTRID><%= cltrid %></clTRID>
18
+ </command>
19
+ </epp>
20
+
@@ -0,0 +1,25 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <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">
3
+ <command>
4
+ <create>
5
+ <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0" xsi:schemaLocation="urn:ietf:params:xml:ns:domain-1.0 domain-1.0.xsd">
6
+ <domain:name><%= domainName %></domain:name>
7
+ <domain:ns>
8
+ <domain:hostAttr>
9
+ <domain:hostName><%= nsHostname1 %></domain:hostName>
10
+ <domain:hostAddr ip="v4"><%= nsipv4Address1 %></domain:hostAddr>
11
+ </domain:hostAttr>
12
+ <domain:hostAttr>
13
+ <domain:hostName><%= nsHostname2 %></domain:hostName>
14
+ <domain:hostAddr ip="v4"><%= nsipv4Address2 %></domain:hostAddr>
15
+ </domain:hostAttr>
16
+ </domain:ns>
17
+ <domain:registrant><%= registrant %></domain:registrant>
18
+ <domain:authInfo>
19
+ <domain:pw><%= domainSecret %></domain:pw>
20
+ </domain:authInfo>
21
+ </domain:create>
22
+ </create>
23
+ <clTRID><%= cltrid %></clTRID>
24
+ </command>
25
+ </epp>
@@ -0,0 +1,20 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <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">
3
+ <command>
4
+ <create>
5
+ <domain:create xmlns:domain="urn:ietf:params:xml:ns:domain-1.0" xsi:schemaLocation="urn:ietf:params:xml:ns:domain-1.0 domain-1.0.xsd">
6
+ <domain:name><%= domainName %></domain:name>
7
+ <domain:ns>
8
+ <domain:hostObj><%= nsHostname1 %></domain:hostObj>
9
+ <domain:hostObj><%= nsHostname2 %></domain:hostObj>
10
+ </domain:ns>
11
+ <domain:registrant><%= registrant %></domain:registrant>
12
+ <domain:authInfo>
13
+ <domain:pw><%= domainSecret %></domain:pw>
14
+ </domain:authInfo>
15
+ </domain:create>
16
+ </create>
17
+ <clTRID><%= cltrid %></clTRID>
18
+ </command>
19
+ </epp>
20
+
@@ -0,0 +1,13 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
3
+ <command>
4
+ <create>
5
+ <host:create xmlns:host="urn:ietf:params:xml:ns:host-1.0">
6
+ <host:name><%= serverHostname %></host:name>
7
+ <host:addr ip="v4"><%= ipv4Address %></host:addr>
8
+ </host:create>
9
+ </create>
10
+ <clTRID><%= cltrid %></clTRID>
11
+ </command>
12
+ </epp>
13
+
@@ -0,0 +1,27 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <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">
3
+ <command>
4
+ <create>
5
+ <contact:create xmlns:contact="urn:ietf:params:xml:ns:contact-1.0" xsi:schemaLocation="urn:ietf:params:xml:ns:contact-1.0 contact-1.0.xsd">
6
+ <contact:id>ed-registrar</contact:id>
7
+ <contact:postalInfo type="int">
8
+ <contact:name>Ed Pascoe</contact:name>
9
+ <contact:addr>
10
+ <contact:street>abc</contact:street>
11
+ <contact:city>Sandton</contact:city>
12
+ <contact:pc>2095</contact:pc>
13
+ <contact:cc>ZA</contact:cc>
14
+ </contact:addr>
15
+ </contact:postalInfo>
16
+ <contact:voice>+27.835551234</contact:voice>
17
+ <contact:fax x="01">+27.115551234</contact:fax>
18
+ <contact:email>registrytest@pascoe.co.za</contact:email>
19
+ <contact:authInfo>
20
+ <contact:pw>bobsyouraunty</contact:pw>
21
+ </contact:authInfo>
22
+ </contact:create>
23
+ </create>
24
+ <clTRID>NORID-5750-1265060682846224</clTRID>
25
+ </command>
26
+ </epp>
27
+
@@ -0,0 +1,11 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
3
+ <command>
4
+ <delete>
5
+ <contact:delete xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
6
+ <contact:id><%= contactId %></contact:id>
7
+ </contact:delete>
8
+ </delete>
9
+ <clTRID><%= cltrid %></clTRID>
10
+ </command>
11
+ </epp>
@@ -0,0 +1,12 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <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">
3
+ <command>
4
+ <delete>
5
+ <domain:delete xmlns:domain="urn:ietf:params:xml:ns:domain-1.0" xsi:schemaLocation="urn:ietf:params:xml:ns:domain-1.0 domain-1.0.xsd">
6
+ <domain:name><%= domainName %></domain:name>
7
+ </domain:delete>
8
+ </delete>
9
+ <clTRID><%= cltrid %></clTRID>
10
+ </command>
11
+ </epp>
12
+
@@ -0,0 +1,11 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <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">
3
+ <command>
4
+ <delete>
5
+ <host:delete xmlns:host="urn:ietf:params:xml:ns:host-1.0" xsi:schemaLocation="urn:ietf:params:xml:ns:host-1.0 host-1.0.xsd">
6
+ <host:name>ns1.example.com</host:name>
7
+ </host:delete>
8
+ </delete>
9
+ <clTRID>NORID-5852-1265060705122022</clTRID>
10
+ </command>
11
+ </epp>
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <tns:epp_metadata xmlns:tns="urn:ietf:params:xml:ns:dns:epp-metadata" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
3
+ <tns:msg tns:lang="en">Transfer requested.</tns:msg>
4
+ <tns:payload>
5
+ <obj:trnData xmlns:obj="urn:ietf:params:xml:ns:obj-1.0" xsi:schemaLocation="urn:ietf:params:xml:ns:obj-1.0 obj-1.0.xsd">
6
+ <obj:name>example.com</obj:name>
7
+ <obj:trStatus>pending</obj:trStatus>
8
+ <obj:reID>ClientX</obj:reID>
9
+ <obj:reDate>2000-06-08T22:00:00.0Z</obj:reDate>
10
+ <obj:acID>ClientY</obj:acID>
11
+ <obj:acDate>2000-06-13T22:00:00.0Z</obj:acDate>
12
+ <obj:exDate>2002-09-08T22:00:00.0Z</obj:exDate>
13
+ </obj:trnData>
14
+ </tns:payload>
15
+ <tns:from>uniforum</tns:from>
16
+ <tns:to>mike-test</tns:to>
17
+ </tns:epp_metadata>
18
+
data/erb/info.erb ADDED
@@ -0,0 +1,12 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <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">
3
+ <command>
4
+ <info>
5
+ <domain:info xmlns:domain="urn:ietf:params:xml:ns:domain-1.0" xsi:schemaLocation="urn:ietf:params:xml:ns:domain-1.0 domain-1.0.xsd">
6
+ <domain:name hosts="all">renew-test-14189.no</domain:name>
7
+ </domain:info>
8
+ </info>
9
+ <clTRID>NORID-14373-1207137695427775</clTRID>
10
+ </command>
11
+ </epp>
12
+
@@ -0,0 +1,15 @@
1
+ <epp:epp xmlns:epp="urn:ietf:params:xml:ns:epp-1.0"
2
+ xmlns:contact="urn:ietf:params:xml:ns:contact-1.0"
3
+ xmlns:cozacontact="http://co.za/epp/extensions/cozacontact-1-0">
4
+ <epp:command>
5
+ <epp:info>
6
+ <contact:info>
7
+ <contact:id><%= contactId %></contact:id>
8
+ </contact:info>
9
+ </epp:info>
10
+ <epp:extension>
11
+ <cozacontact:info>
12
+ <cozacontact:balance>true</cozacontact:balance></cozacontact:info>
13
+ </epp:extension>
14
+ </epp:command>
15
+ </epp:epp>
@@ -0,0 +1,15 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
3
+ <command>
4
+ <info>
5
+ <contact:info xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
6
+ <contact:id><%= contactId %></contact:id>
7
+ <contact:authInfo>
8
+ <contact:pw><%= contactPassword %></contact:pw>
9
+ </contact:authInfo>
10
+ </contact:info>
11
+ </info>
12
+ <clTRID><%= cltrid %></clTRID>
13
+ </command>
14
+ </epp>
15
+
@@ -0,0 +1,20 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
3
+ <command>
4
+ <info>
5
+ <contact:info xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
6
+ <contact:id><%= contactId %></contact:id>
7
+ <contact:authInfo>
8
+ <contact:pw><%= contactPassword %></contact:pw>
9
+ </contact:authInfo>
10
+ </contact:info>
11
+ </info>
12
+ <extension>
13
+ <cozac:info xmlns:cozac="http://co.za/epp/extensions/cozacontact-1-0">
14
+ <cozac:domainListing>true</cozac:domainListing>
15
+ </cozac:info>
16
+ </extension>
17
+ <clTRID><%= cltrid %></clTRID>
18
+ </command>
19
+ </epp>
20
+
@@ -0,0 +1,49 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
3
+ <response>
4
+ <result code="1000">
5
+ <msg>Command completed successfully</msg>
6
+ </result>
7
+ <resData>
8
+ <contact:infData xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
9
+ <contact:id>sh8013</contact:id>
10
+ <contact:roid>SH8013-REP</contact:roid>
11
+ <contact:status s="linked"/>
12
+ <contact:status s="clientDeleteProhibited"/>
13
+ <contact:postalInfo type="int">
14
+ <contact:name>John Doe</contact:name>
15
+ <contact:org>Example Inc.</contact:org>
16
+ <contact:addr>
17
+ <contact:street>123 Example Dr.</contact:street>
18
+ <contact:street>Suite 100</contact:street>
19
+ <contact:city>Dulles</contact:city>
20
+ <contact:sp>VA</contact:sp>
21
+ <contact:pc>20166-6503</contact:pc>
22
+ <contact:cc>US</contact:cc>
23
+ </contact:addr>
24
+ </contact:postalInfo>
25
+ <contact:voice x="1234">+1.7035555555</contact:voice>
26
+ <contact:fax>+1.7035555556</contact:fax>
27
+ <contact:email>jdoe@example.com</contact:email>
28
+ <contact:clID>ClientY</contact:clID>
29
+ <contact:crID>ClientX</contact:crID>
30
+ <contact:crDate>1999-04-03T22:00:00.0Z</contact:crDate>
31
+ <contact:upID>ClientX</contact:upID>
32
+ <contact:upDate>1999-12-03T09:00:00.0Z</contact:upDate>
33
+ <contact:trDate>2000-04-08T09:00:00.0Z</contact:trDate>
34
+ <contact:authInfo>
35
+ <contact:pw>2fooBAR</contact:pw>
36
+ </contact:authInfo>
37
+ <contact:disclose flag="0">
38
+ <contact:voice/>
39
+ <contact:email/>
40
+ </contact:disclose>
41
+ </contact:infData>
42
+ </resData>
43
+ <trID>
44
+ <clTRID>ABC-12345</clTRID>
45
+ <svTRID>54322-XYZ</svTRID>
46
+ </trID>
47
+ </response>
48
+ </epp>
49
+
@@ -0,0 +1,12 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <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">
3
+ <command>
4
+ <info>
5
+ <domain:info xmlns:domain="urn:ietf:params:xml:ns:domain-1.0" xsi:schemaLocation="urn:ietf:params:xml:ns:domain-1.0 domain-1.0.xsd">
6
+ <domain:name hosts="all"><%= domainName %></domain:name>
7
+ </domain:info>
8
+ </info>
9
+ <clTRID><%= cltrid %></clTRID>
10
+ </command>
11
+ </epp>
12
+
data/erb/info_host.erb ADDED
@@ -0,0 +1,12 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <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">
3
+ <command>
4
+ <info>
5
+ <host:info xmlns:host="urn:ietf:params:xml:ns:host-1.0" xsi:schemaLocation="urn:ietf:params:xml:ns:host-1.0 host-1.0.xsd">
6
+ <host:name>ns1.example.test.dnservices.co.za</host:name>
7
+ </host:info>
8
+ </info>
9
+ <clTRID>NORID-14373-1207137695427775</clTRID>
10
+ </command>
11
+ </epp>
12
+
data/erb/login.erb ADDED
@@ -0,0 +1,18 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
3
+ <command>
4
+ <login>
5
+ <clID><%= @eppTag %></clID>
6
+ <pw><%= @eppPassword %></pw>
7
+ <options>
8
+ <version>1.0</version>
9
+ <lang>en</lang>
10
+ </options>
11
+ <svcs>
12
+ <objURI>urn:ietf:params:xml:ns:domain-1.0</objURI>
13
+ <objURI>urn:ietf:params:xml:ns:contact-1.0</objURI>
14
+ </svcs>
15
+ </login>
16
+ <clTRID><%= cltrid %></clTRID>
17
+ </command>
18
+ </epp>
data/erb/logout.erb ADDED
@@ -0,0 +1,8 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
3
+ <command>
4
+ <logout/>
5
+ <clTRID><%= cltrid %></clTRID>
6
+ </command>
7
+ </epp>
8
+
data/erb/pack.erb ADDED
@@ -0,0 +1,8 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
3
+ <command>
4
+ <poll op="ack" msgID="__ID__"/>
5
+ <clTRID>CLID-126BCEA4443-CC61</clTRID>
6
+ </command>
7
+ </epp>
8
+
data/erb/poll.erb ADDED
@@ -0,0 +1,8 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
3
+ <command>
4
+ <poll op="req"/>
5
+ <clTRID><%= cltrid %></clTRID>
6
+ </command>
7
+ </epp>
8
+
data/erb/poll_ack.erb ADDED
@@ -0,0 +1,8 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
3
+ <command>
4
+ <poll op="ack" msgID="<%= messageId %>"/>
5
+ <clTRID><%= cltrid %></clTRID>
6
+ </command>
7
+ </epp>
8
+