我试图通过c#中的串口与GSM调制解调器通信。
到目前为止,我已经能够与它连接,向它发送AT命令并发送短信。
发送短信,我发送以下AT命令
AT+CMGF=1 /* set text mode */
AT+CMGS=8801911xxxxxx
"hellp msg "+ (char)26
按预期工作。
但是要发送USSD消息,
我正在尝试
AT+CMGF=0 /* PDU mode */
AT+CUSD=1,*121# , 15
但它没有回复。
我已尝试使用GSMCOMM库,它也没有响应。
我试图将文本转换为PDU,但仍然没有运气。
那么如何在串口中将C#中的USSD消息发送到调制解调器并获得响应呢?
答案 0 :(得分:2)
你应该像这样发送USSD命令:
<form action="mail_handler.php" method="post" name="form" class="">
<div class="form-group ">
<div class="">
<input class="form-control input-lg" type="text" name="name" placeholder="Name*" required >
</div><br>
<div class="">
<input class="form-control input-lg" type="email" name="email" placeholder="Email Address*" required >
</div><br>
<div class="">
<input class="form-control input-lg" type="subject" name="subject" placeholder="Subject*" required >
</div><br>
<div class="">
<textarea class="form-control" name="msg" placeholder="Message*" required rows="8" cols="80"></textarea>
</div><br>
<div class="">
<button class="btn btn-danger btn-lg" type="submit" value="send" name="submit">SUBMIT</button>
</div>
</div>
</form>
另请注意AT+CUSD=1,"*121#",15
仅影响短信发送,而不影响USSD。
您可能还想查看this answer。
答案 1 :(得分:0)
像这样发送USSD命令:
sp.Write("AT+CUSD=1,\"*710#\",15\r");