Grails&短信插件

时间:2015-10-06 02:29:11

标签: grails sms

是否有任何建议可以轻松与Grails集成的SMS插件?

我正在建立一个管理系统,通过短信向客户发送确认信息。

1 个答案:

答案 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 ->
      }
    }