Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Delphi и MTS Communicator M2M XML API

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

megaspring

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Необходимо настроить отправку sms из приложения, написанного на Delphi, с помощью MTS Communicator API.
В приложении есть компонент THTTPRIO, в нем, в свойстве WSDLLocation, прописана ссылка на wsdl-описания сервисов отправки sms (https://www.mcommunicator.ru/m2m/m2m_api.asmx?WSDL).  
Сама wsdl выгружена, сохранена и добавлена в проект приложения.
Отправка sms осуществляется следующим образом:

Код:
procedure TForm1.Button1Click(Sender: TObject);
var mc: MTS_x0020_Communicator_x0020_M2M_x0020_XML_x0020_APISoap;
    res: Int64;
    MD5: TIdHashMessageDigest5;
begin
  MD5:=TIdHashMessageDigest5.Create;
  mc:=GetMTS_x0020_Communicator_x0020_M2M_x0020_XML_x0020_APISoap(true, 'https://www.mcommunicator.ru/m2m/m2m_api.asmx?WSDL', HTTPRIO1);
  try
    mc.SendMessage(Edit1.Text, Edit2.Text, Edit3.Text, Edit4.Text, MD5.HashStringAsHex(Edit5.Text));
  except
    on e: Exception do
      Application.MessageBox(PChar('Ошибка отправки sms-сообщения:'+#13+e.Message), PChar(Application.Title), MB_OK or MB_ICONERROR);
  end;
  MD5.Destroy;
end;

где:
Edit1.Text - номер получателя вида 7хххххххххх;
Edit2.Text - текст сообщения;
Edit3.Text - номер отправителя вида 7хххххххххх;
Edit4.Text - логин;
Edit5.Text - пароль.
 
При любых значениях номеров отправителя, получателя, текста сообщения, логина или пароля получаю одну и ту же ошибку: MSID_FORMAT_ERROR (Формат MSID неверен).
 
Может кто сталкивался с Delphi и MTS Communicator M2M XML API? Помогите разобраться.

Всего записей: 7 | Зарегистр. 10-07-2012 | Отправлено: 13:49 19-05-2015
megaspring

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
В данном случае была проблема в Delphi7. В Delphi XE3 все заработало.
 
Появилась новая проблема - необходимо не только отправлять, но и получать сообщения.
Сообщения, отправленные на номер MTS Communicator отображаются в личном кабинете MTS Communicator, но функцией  

Код:
function  GetMessages(const messageType: RequestMessageType; const subscriberMsids: ArrayOfString; const DateFrom: TXSDateTime; const DateTo: TXSDateTime; const login: string; const password: string): ArrayOfMessageInfo2;

не отлавливаются.

Всего записей: 7 | Зарегистр. 10-07-2012 | Отправлено: 09:58 20-05-2015
asutp2

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
MTS_x0020_Communicator_x0020_M2M_x0020_XML_x0020_APISoap - отличное имя)))))

Всего записей: 791 | Зарегистр. 22-10-2004 | Отправлено: 15:55 20-05-2015
megaspring

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вопрос снят.  
Для получения входящих сообщений необходимо написать свою функцию их обработки и передать ее параметры МТС.
 

Цитата:
MTS_x0020_Communicator_x0020_M2M_x0020_XML_x0020_APISoap - отличное имя)))))

Это имя предлагает использовать МТС
 

Всего записей: 7 | Зарегистр. 10-07-2012 | Отправлено: 08:24 21-05-2015
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Delphi и MTS Communicator M2M XML API


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru