@drpankoff2013
Web development: the way of mistakes

Как правильно отправлять sms-уведомления со своего сайта себе?

Привет!
Начал интегрировать смс уведомления на сайт. Алгоритм ужасно прост : пользователь купил - на e-mail'е уведомления - смс уведомления программисту. Выбрал sms.ru , который видимо закрылся.
Какие есть еще сервисы по рассылки бесплатных sms на один номер?
  • Вопрос задан
  • 1026 просмотров
Пригласить эксперта
Ответы на вопрос 3
yokotoka
@yokotoka
Python guru
Принципиально ли SMS в век смартфона и безлимитного интернета? Есть мнение, что гораздо лучше сделать для этого telegram- или slack-бота.

Делается элементарно - один http-запрос.
В slack это chat.postMessage, в telegram - что-то похожее.

https://api.slack.com/
https://core.telegram.org/
Ответ написан
Комментировать
BuriK666
@BuriK666
Компьютерный псих
Отправляйте на почту и пусть получает email на телефоне.
Ответ написан
Комментировать
Taraflex
@Taraflex
Ищу работу. Контакты в профиле.
sms.ru , который видимо закрылся.

Да вроде жив.
В гугл документах можно создать таблицу к которой прикрепить гуглскрипт, который будет по "крону" (настраивается в редакторе gs) обрабатывать все новые письма. У меня например такая уведомлялка на sms работает.
function getLastMessageBody(thread){
  var msgs = thread.getMessages();
  var msg = msgs[msgs.length - 1].getBody();
  return (/<em>(.+)<\/em>/i).exec(msg.replace(/\s+/gim,' '))[1];
}

function trimForSMS(text, mchars){
  mchars = mchars || 0;
  text = text.trim();
  var maxLetters = ( /^[a-zA-Z0-9\s\^\[\]\(\)\/\*\+\-\=\|\{\}\%\,\$\#\@\&\!\?\.\,\`\~\;\:\_\<\>\"]*$/.test(text) ? 160 : 70 ) - 12 - mchars;
  return text.substring(0,maxLetters).trim();
}

function my_notification() 
{  
  var labels = GmailApp.getUserLabelByName('SMSnotify');
  
  if(labels)
  {
    var threads = labels.getThreads(); 
    
    if(threads.length > 0)
    {
      for(i in threads)
      {
        var cthread = threads[i];
        
        var text = cthread.getFirstMessageSubject();
        
        if(text[0] == 'R' && text[1] == 'e' && text[2] == ':')
        {
          text = text.substring(3);
        }
        text = trimForSMS(text);      
        
        if(text == 'Новое сообщение в заказе на FL.ru')
        {          
          text = 'FL.ru: ' + trimForSMS(getLastMessageBody(cthread), 7);
        }
        
        UrlFetchApp.fetch('http://sms.ru/sms/send?api_id=<ваш ключ>&to=9176696749&text=' + encodeURIComponent(text));
      }
      
      labels.removeFromThreads(threads); //снимаем метки "SMSnotify" с цепочек
    }
  }
}

Лейбл "SMSnotify" крепиться о всем новым письмам адресованным непосредственно мне в настройках фильтров gmail.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы