Имя: Пароль:
1C
1С v8
Отправка длинного смс
0 KKrKKdd
 
27.01.16
03:48
Всем привет!
(Благодаря некоторым пользователям форума) отправляю СМС следующим образом.
(Формат текстовый, хотелось бы его и оставить. Кириллица не нужна.)

    
    
    СерверMSComm.Output = "AT" + Символ(13);
    Отправлено    = Ложь;
    ВремяНачала    = ТекущаяУниверсальнаяДатаВМиллисекундах();
    Пока ТекущаяУниверсальнаяДатаВМиллисекундах() - ВремяНачала <= 10000 Цикл
        Если СокрЛП(СерверMSComm.Input) = "OK" Тогда
            Отправлено = Истина;
            Прервать;
        КонецЕсли;
    КонецЦикла;
    Если НЕ Отправлено Тогда
        СерверMSComm.PortOpen = Ложь;
        Возврат 2;
    КонецЕсли;
    
    
    
    
    
    СерверMSComm.Output = "AT+CMGF=1" + Символ(13) + Символ(10);
    Отправлено    = Ложь;
    ВремяНачала    = ТекущаяУниверсальнаяДатаВМиллисекундах();
    Пока ТекущаяУниверсальнаяДатаВМиллисекундах() - ВремяНачала <= 10000 Цикл
        Если СокрЛП(СерверMSComm.Input) = "OK" Тогда
            Отправлено = Истина;
            Прервать;
        КонецЕсли;
    КонецЦикла;
    Если НЕ Отправлено Тогда
        СерверMSComm.PortOpen = Ложь;
        Возврат 2;
    КонецЕсли;
    
    
    СерверMSComm.Output = "AT+CMGS="""+НомерТелефона+"""" + Символ(13) + Символ(10);

    Отправлено    = Ложь;
    ВремяНачала    = ТекущаяУниверсальнаяДатаВМиллисекундах();
    Пока ТекущаяУниверсальнаяДатаВМиллисекундах() - ВремяНачала <= 10000 Цикл
        Если СокрЛП(СерверMSComm.Input) = ">" Тогда
            Отправлено = Истина;
            Прервать;
        КонецЕсли;
    КонецЦикла;
    Если НЕ Отправлено Тогда
        СерверMSComm.PortOpen = Ложь;
        Возврат 2;
    КонецЕсли;
    
    
    
    СерверMSComm.Output = ТекстСМС + Символ(26)+   Символ(13);
    Отправлено    = Ложь;
    ВремяНачала    = ТекущаяУниверсальнаяДатаВМиллисекундах();
    Пока ТекущаяУниверсальнаяДатаВМиллисекундах() - ВремяНачала <= 10000 Цикл
        Если Прав(СокрЛП(СерверMSComm.Input), 2) = "OK" Тогда
            Отправлено = Истина;
            Прервать;
        КонецЕсли;
    КонецЦикла;
    Если НЕ Отправлено Тогда
        СерверMSComm.PortOpen = Ложь;
        Возврат 2;
    КонецЕсли;




Так вот хотелось бы не уходя от этого формата отправлять смс длиннее чем 160 символов.
Возможно ли это? Менее 160 отправляется хорошо.
1 KKrKKdd
 
27.01.16
06:52
Вопрос остается открытым...
2 orangekrs
 
27.01.16
06:55
Разбивать строку на части по 160 символов ? 160 символов - это ограничение стандарта SMS
3 orangekrs
 
27.01.16
06:57
Или нужна склейка сообщений ? Тогда вот тут люди обсуждают: http://www.microchip.su/showthread.php?t=6372
4 KKrKKdd
 
27.01.16
07:11
Да, нужна склейка но без перехода в цифровой режим работы. это возможно?
5 KKrKKdd
 
27.01.16
08:32
О, коллективный разум, помоги обрести знание
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой