云服务器内容精选

  • 接收状态报告 需要引入的maven依赖为:org.springframework:spring-web:5.3.21(样例版本) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; @RestController public class DemoController { /** * 同步短信回执 */ @PostMapping("/report") public void smsHwReport(@RequestParam String smsMsgId, // 发送短信成功时返回的短信唯一标识。 @RequestParam(required = false) String total, // 长短信拆分后的短信条数。当短信未拆分时该参数取值为1。 @RequestParam(required = false) String sequence, // 长短信拆分后的短信序号,当total参数取值大于1时,该参数才有效。当短信未拆分时该参数取值为1。 @RequestParam String status, // 短信状态报告枚举值,常见取值请参考“API参考” @RequestParam(required = false) String source, // 短信状态报告来源:1:短信平台自行产生的状态报告。2:短信中心返回的状态报告。3:华为平台产生的状态报告。 @RequestParam(required = false) String updateTime,// 短信资源的更新时间,通常为短信平台接收短信状态报告的时间,为UTC时间,格式为:yyyy-MM-dd'T'HH:mm:ss'Z',该时间会通过urlencode转义为%3a。// 当短信平台未收到短信中心上报的状态报告时,会自行构造状态报告,该状态报告中不携带“updateTime”参数。 @RequestParam(required = false) String orgCode, // 透传南向网元状态码,仅国际/港澳台短信状态报告携带,国内短信不涉及。// 当南向网元未返回状态码时不携带该参数。 @RequestParam(required = false) String extend, // 扩展字段,由用户在发送短信的请求中携带。若用户发送短信时未携带extend参数,则状态报告中也不会携带extend参数。 @RequestParam(required = false) String to) { // 本条状态报告对应的短信的接收方号码,仅当状态报告中携带了extend参数时才会同时携带该参数。 System.out.println(" ================receive smsStatusReport ======================"); System.out.println("smsMsgId: " + smsMsgId); System.out.println("total: " + total); System.out.println("sequence: " + sequence); System.out.println("status: " + status); System.out.println("source: " + source); System.out.println("updateTime: " + updateTime); System.out.println("orgCode: " + orgCode); System.out.println("extend: " + extend); System.out.println("to: " + to); } }
  • 接收上行短信 需要引入的maven依赖为:org.springframework:spring-web:5.3.21(样例版本) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.PostMapping; @RestController public class DemoController { /* * @param smsMsgId 上行短信的唯一标识。 * @param from 上行短信发送方的号码。 * @param to 上行短信接收方的号码。 * @param body 上行短信发送的内容。 * @param createTime // 上行短信创建时间,即短信平台接收到用户发送的上行短信的时间(采用标准UTC格式,例如:2018-02-12T15:30:20Z。不同编程语言中的时间格式转换方式不同,部分语言可参考表 不同编程语言的时间格式)。 * // 在控制台创建应用时配置需要“接收上行短信回复时间”后,平台才会在Body中附带此字段,该字段只对http协议的短信生效。 */ @PostMapping("/up SMS ") public void receiveHwSms(@RequestParam String smsMsgId, @RequestParam String from, @RequestParam String to, @RequestParam String body, @RequestParam(required = false) String createTime) { System.out.println(" ================receive upSMS ======================"); // 打印上面的RequestParam System.out.println(" smsMsgId: " + smsMsgId); System.out.println(" from: " + from); System.out.println(" to: " + to); System.out.println(" body: " + body); System.out.println(" createTime: " + createTime); } }