package com.opentravelsoft.action.sms;
import org.springframework.beans.factory.annotation.Autowired;
import com.opentravelsoft.service.SmsService;
import com.opentravelsoft.webapp.action.PortalAction;
public class SendResultAction extends PortalAction {
private static final long serialVersionUID = -8845055926235599326L;
@Autowired
private SmsService smsService;
private String seqno;
private String extno;
private String mob;
/**
* 处理状态
* <ul>
* <li>0 未定义
* <li>1 已接受,等待后续结果
* <li>2 得到成功状态报告
* <li>3 后续提交失败
* <li>4 状态报告失败
* </ul>
*/
private String stat;
/**
* 状态/错误码
*
* stat=3时表示提交失败码<br>
*
* 依据承载通道有不同的定义,不作详细说明。<br>
*
* stat=4时表示原始状态报告<br>
*
* 常见SMPP标准状态报告有以下一些:
* <ul>
* <li>DELIVRD 下发成功
* <li>EXPIRED 超过短信中心短信存活期仍然未下发成功
* <li>REJECTD 拒绝发送
* <li>UNDELIV 下发失败
* </ul>
* 其他网关/厂商扩展码非常复杂,不作详细说明。
*/
private String status;
public String getExtno() {
return extno;
}
public void setExtno(String extno) {
this.extno = extno;
}
public String getMob() {
return mob;
}
public void setMob(String mob) {
this.mob = mob;
}
public String getSeqno() {
return seqno;
}
public void setSeqno(String seqno) {
this.seqno = seqno;
}
public String getStat() {
return stat;
}
public void setStat(String stat) {
this.stat = stat;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
@Override
public String execute() {
// http://foo.com/path/report.php?seqno=1787309083485798406&extno=123456&mob=13501683251&stat=2&status=DELIVRD
// http://foo.com/path/report.php
// ?seqno=1787309083485798406
// &extno=123456
// &mob=13501683251
// &stat=2
// &status=DELIVRD
try {
int result = smsService.txSendResult(seqno, extno, mob, stat, status);
} catch (Exception e) {
}
return SUCCESS;
}
}