|
华为信息机虽然只提供了DLL和Java的接口,但是其它的语言还是可以调用,方法就是使用它的存储过程。下面是一个PHP调用的例子
class PHPSMS { var $dbHost = "ip:1433"; var $dbName = "DB_CustomSMS"; var $dbUser = "sa"; var $dbPass = ""; var $name = "0005"; var $pass = ""; var $db;
function init() { $this->db = &ADONewConnection('mssql'); $this->db->Connect($this->dbHost,$this->dbUser,$this->dbPass,$this->dbName) or die($db->ErrorMsg().' '); } function addSMtoSend($pDestAddr,$pSmContent) { $pOrgAddr = '1068×××××'.$this->name; $pSendTime = date("Y-m-d H:i:s"); $pNeedStateReport = 0; $pServiceID = "EIES"; $pFeeType = "02" ; $pFeeCode = "0"; $pSMType = 0; $pMessageID = "0"; $pDestaddrType = 0; $pCreatorID = $this->name; $pSuccess = -1; $stmt = $this->db->PrepareSP('addSMtoSend'); $this->db->InParameter($stmt,$pOrgAddr,'pOrgAddr'); $this->db->InParameter($stmt,$pDestAddr,'pDestAddr'); $this->db->InParameter($stmt,$pSmContent,'pSmContent'); $this->db->InParameter($stmt,$pSendTime,'pSendTime'); $this->db->InParameter($stmt,$pNeedStateReport,'pNeedStateReport'); $this->db->InParameter($stmt,$pServiceID,'pServiceID'); $this->db->InParameter($stmt,$pFeeType,'pFeeType'); $this->db->InParameter($stmt,$pFeeCode,'pFeeCode'); $this->db->InParameter($stmt,$pSMType,'pSMType'); $this->db->InParameter($stmt,$pMessageID,'pMessageID'); $this->db->InParameter($stmt,$pDestaddrType,'pDestaddrType'); $this->db->InParameter($stmt,$pCreatorID,'pCreatorID');
$this->db->OutParameter($stmt,$pSuccess,'pSuccess'); $this->db->Execute($stmt); if($pSuccess>=0) return 1; else return 0; } function fetchSMRequest(&$SourceAddr,&$Content,&$RecvTime) { $DestAddrMask = '1068×××××'.$this->name;
$DestAddr = '';
$SMType = 0; $pMessageID = "0"; $OrgAddrType = 0; $ActionID = 0; $ActionReasonID = 0; $ServiceID = ""; $Ret_Code = 0; $stmt = $this->db->PrepareSP('FetchSMRequest'); $this->db->InParameter($stmt,$DestAddrMask,'DestAddrMask');
$this->db->OutParameter($stmt,$SourceAddr,'SourceAddr'); $this->db->OutParameter($stmt,$DestAddr,'DestAddr'); $this->db->OutParameter($stmt,$Content,'Content'); $this->db->OutParameter($stmt,$RecvTime,'RecvTime'); $this->db->OutParameter($stmt,$SMType,'SMType'); $this->db->OutParameter($stmt,$MessageID,'MessageID'); $this->db->OutParameter($stmt,$OrgAddrType,'OrgAddrType'); $this->db->OutParameter($stmt,$ActionID,'ActionID'); $this->db->OutParameter($stmt,$ActionReasonID,'ActionReasonID'); $this->db->OutParameter($stmt,$ServiceID,'ServiceID'); $this->db->OutParameter($stmt,$Ret_Code,'Ret_Code'); $this->db->Execute($stmt); return $Ret_Code; //0 没有消息 1 成功 -1 失败
} }
?>
使用的时候,先初始化
$sms = new PHPSMS(); $sms->init();
发送消息的方法
$re = $sms->addSMtoSend('1385×××××','PHP测试'); if($re = 1) echo "success"; else echo "fail";
接收消息的方法
$SourceAddr = ''; $Content = ''; $RecvTime = ''; while( $sms->fetchSMRequest($SourceAddr,$RecvTime) ) { echo $SourceAddr." ".$Content." ".$RecvTime; }
(编辑:安卓应用网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|