ruby 快速脚本调用Dyn的API(可选)删除Postini MX记录并添加小写的Google Mail MX记录。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ruby 快速脚本调用Dyn的API(可选)删除Postini MX记录并添加小写的Google Mail MX记录。相关的知识,希望对你有一定的参考价值。

require 'dyn-rb'

# usage: ruby ./lowercase_google_mx.rb domain.com

# 1: set up the connection
dyn = Dyn::Traffic::Client.new('CUSTOMER_NAME', 'USERNAME', 'PASSWORD')

# 2: set the zone
zone = ARGV[0].to_s
dyn.zone = zone
puts "replacing for #{zone}"

# 3: remove MX records
dyn.mx.get(zone).map do |r|
  if r.rdata["exchange"].include? "ASPMX.L.GOOGLE.COM"
    dyn.mx.fqdn(zone).record_id(r.record_id).delete
  end
  # [OPTIONAL] if you're moving away from postini you can also bin off those records
  # if r.rdata["exchange"].include? "psmtp"
  #   dyn.mx.fqdn(zone).record_id(r.record_id).delete
  # end
end
puts ".. deleted"

# 4: create an MX record
dyn.mx.fqdn(zone).exchange("aspmx.l.google.com.").preference(1).ttl(3600).save()
dyn.mx.fqdn(zone).exchange("alt1.aspmx.l.google.com.").preference(5).ttl(3600).save()
dyn.mx.fqdn(zone).exchange("alt2.aspmx.l.google.com.").preference(5).ttl(3600).save()
dyn.mx.fqdn(zone).exchange("alt3.aspmx.l.google.com.").preference(10).ttl(3600).save()
dyn.mx.fqdn(zone).exchange("alt4.aspmx.l.google.com.").preference(10).ttl(3600).save()
puts ".. added"

# 5: publish the changes
dyn.zone.publish
puts ".. published!"

以上是关于ruby 快速脚本调用Dyn的API(可选)删除Postini MX记录并添加小写的Google Mail MX记录。的主要内容,如果未能解决你的问题,请参考以下文章