class Submail::MailXSend
Public Class Methods
new(config)
click to toggle source
# File lib/submail/mail_x_send.rb, line 5 def initialize(config) @to = [] @addressbook = [] @from = "" @fromname = "" @reply = "" @cc = [] @bcc = [] @subject = "" @project = "" @vars ={} @links = {} @headers = {} @config = config end
Public Instance Methods
add_addressbook(addressbook)
click to toggle source
# File lib/submail/mail_x_send.rb, line 28 def add_addressbook(addressbook) @addressbook = [] @addressbook << addressbook end
add_bcc(address, name)
click to toggle source
# File lib/submail/mail_x_send.rb, line 49 def add_bcc(address, name) bcc = {} bcc["address"] = address bcc["name"] = name @bcc << bcc end
add_cc(address, name)
click to toggle source
# File lib/submail/mail_x_send.rb, line 42 def add_cc(address, name) cc = {} cc["address"] = address cc["name"] = name @cc << cc end
add_header(key, value)
click to toggle source
# File lib/submail/mail_x_send.rb, line 72 def add_header(key, value) @headers[key] = value end
add_link(key, value)
click to toggle source
# File lib/submail/mail_x_send.rb, line 68 def add_link(key, value) @links[key] = value end
add_to(address, name)
click to toggle source
# File lib/submail/mail_x_send.rb, line 21 def add_to(address, name) to = {} to["address"] = address to["name"] = name @to << to end
add_var(key, value)
click to toggle source
# File lib/submail/mail_x_send.rb, line 64 def add_var(key, value) @vars[key] = value end
build_request()
click to toggle source
# File lib/submail/mail_x_send.rb, line 76 def build_request request = {} if @to.length != 0 to = [] @to.each do |k| to << "%s<%s>" %[k["name"], k["address"]] end request["to"] = to.join(",") end if @addressbook.length != 0 request["addressbook"] = @addressbook.join(",") end if @from != "" request["from"] = @from end if @fromname != "" request["from_name"] = @fromname end if @reply != "" request["reply"] = @reply end if @cc.length != 0 cc = [] @cc.each do |k| cc << "%s<%s>" %[k["name"], k["address"]] end request["cc"] = cc.join(",") end if @bcc.length != 0 bcc = [] @bcc.each do |k| bcc << "%s<%s>" %[k["name"], k["address"]] end request["bcc"] = bcc.join(",") end if @subject != "" request["subject"] = @subject end if @project != "" request["project"] = @project end if @vars.length != 0 request["vars"] = JSON.generate @vars end if @links.length != 0 request["links"] = JSON.generate @links end if @headers.length != 0 request["headers"] = JSON.generate @headers end request end
mail_xsend()
click to toggle source
# File lib/submail/mail_x_send.rb, line 130 def mail_xsend request = self.build_request() url = "https://api.submail.cn/mail/xsend.json" request["appid"] = @config["appid"] request["timestamp"] = get_timestamp() request["signature"] = create_signatrue(request, @config) JSON.parse http_post(url, request) end
set_project(project)
click to toggle source
# File lib/submail/mail_x_send.rb, line 60 def set_project(project) @project = project end
set_reply(reply)
click to toggle source
# File lib/submail/mail_x_send.rb, line 38 def set_reply(reply) @reply = reply end
set_sender(from, fromname)
click to toggle source
# File lib/submail/mail_x_send.rb, line 33 def set_sender(from, fromname) @from = from @fromname = fromname end
set_subject(subject)
click to toggle source
# File lib/submail/mail_x_send.rb, line 56 def set_subject(subject) @subject = subject end