是否有任何建议可以轻松与Grails集成的SMS插件?
我正在建立一个管理系统,通过短信向客户发送确认信息。
答案 0 :(得分:0)
SMS服务的成本和解决质量取决于您将向哪个国家/地区发送短信,但(在更改为瑞典供应商之前)我们使用了国际供应商Clickatell,结果不错。
你不需要Grails插件,只需使用Grails的HTTPBuilder(例如通过包含Grails REST插件)根据他们的文档调用Clickatell API。
以下是一些旧示例代码(如果API已更改,可能无法正常工作):
import groovyx.net.http.HTTPBuilder
import groovyx.net.http.EncoderRegistry
import static groovyx.net.http.Method.POST
import static groovyx.net.http.ContentType.URLENC
import static groovyx.net.http.ContentType.TEXT
def http = new HTTPBuilder(host)
http.contentType = TEXT
EncoderRegistry encoders = new EncoderRegistry();
encoders.setCharset('ISO-8859-1')
http.setEncoderRegistry(encoders)
http.request(POST) {
uri.path = 'http/sendmsg'
requestContentType = URLENC
body = [api_id: '1234567', user: 'john', password: 'doe', from: 'Company', to: NUMBER, text: 'Hello world', concat: '3', callback: '2', deliv_ack: '1']
response.success = { resp, reader ->
def msg = reader.text
if (msg.substring(0, 2) == 'ID') {
} else if (msg.substring(0, 3) == 'ERR') {
} else {
}
}
response.failure = { resp ->
}
}