Я использую библиотеку scampers для отправки и получения SMS через модем GSM. Он работает почти так, как я хотел. Но проблема, с которой я столкнулся, заключается в том, что я не могу вводить команду типа * 101 # или аналогичную, после некоторых исследований я обнаружил, что эта команда называется командой USSD. Итак, мой вопрос: кто-нибудь смог отправить команду USSD через библиотеку Scampers.
GsmComm USSD-команда
Ответы (3)
USSD — это протокол, отличный от SMS, поэтому вы не можете использовать библиотеку, ориентированную на SMS, для отправки сообщений USMD. Это похоже на попытку отправить http-запрос из клиентской библиотеки ftp.
person
linkerro
schedule
27.02.2012
Вот пример использования SMSLib для .net (надеюсь, это то, что вы хотели) группы .google.com/group/smslib-dotnet/browse_thread/thread/ smslib.org/ doc/smslib/dotnet
- person linkerro; 27.02.2012
@linkerro, ссылка на группу не работает. Можете ли вы предоставить любую другую ссылку?
- person th1rdey3; 27.07.2015
Это сработало для меня довольно хорошо с помощью GsmComm:
public string SendUssdRequest(string request)
{
string data = TextDataConverter.StringTo7Bit(request);
var asPDUencoded = Calc.IntToHex(TextDataConverter.SeptetsToOctetsInt(data));
try
{
IProtocol protocol = _comm.GetProtocol();
string gottenString = protocol.ExecAndReceiveMultiple("AT+CUSD=1," + asPDUencoded + ",15");
var re = new Regex("\".*?\"");
int i = 0;
if (!re.IsMatch(gottenString))
{
do
{
protocol.Receive(out gottenString);
++i;
} while (!(i >= 5
|| re.IsMatch(gottenString)
|| gottenString.Contains("\r\nOK")
|| gottenString.Contains("\r\nERROR")
|| gottenString.Contains("\r\nDONE"))); //additional tests "just in case"
}
string m = re.Match(gottenString).Value.Trim('"');
return PduParts.Decode7BitText(Calc.HexToInt(m));
}
catch { }
finally
{
_comm.ReleaseProtocol();
}
return "";
}
person
Jörgen Lindell
schedule
12.11.2013
Как я могу найти номер порта для _comm, и если я установил номер порта по умолчанию с помощью GsmComm.defaultportnumber, то я получил только это исключение. Поток связи не запущен.
- person AT07; 02.07.2015
Каков тип
_comm
?
- person th1rdey3; 27.07.2015
привет, когда я использую ваш код, я получаю это исключение: Сообщение = Произошла ошибка мобильного оборудования 50. в чем проблема? я думаю, вы изменили некоторые настройки для объекта _comm перед отправкой запроса.
- person Meysam Bagheri; 14.11.2019
тип _comm — GsmCommMain
using GsmComm.GsmCommunication;
using GsmComm.PduConverter;
using GsmComm.PduConverter.SmartMessaging;
GsmCommMain _comm;
person
Community
schedule
18.05.2017
Вы должны опубликовать комментарий, а не просто код, чтобы дать хороший ответ.
- person filipst; 18.05.2017