Все о фотобанках и микростоках, купить и продать фото, работа для фотографа и иллюстратора


Ответ Правила нашего форума>
 
Опции темы Поиск в этой теме
Старый 01.04.2009, 14:15   #1
Новичок
 
Регистрация: 16.03.2009
Сообщения: 37
Репутация: 19
Оставлено благодарностей: 4
Получено благодарностей: 9
По умолчанию Сервис SMS-уведомлений (о продажах)

Сделал SMS-уведомления о новых продажах на iStockphoto (у меня там эксклюзив, поэтому другие стоки пока не делал).

Скрипт опрашивает их вебсервис каждые 5 минут, и если принятые данные о балансе больше чем те что сохранены, то шлется письмо и смска.

Для тех у кого много продаж в день - каждые 5 минут это жестко, но промежуток вызова можно регулировать, например чтобы раз в день приходила смс.

Удобно когда выходные, далеко от компа, инет сломался или в дороге итд.

Народ, если кому надо могу поделится кодом. На халяву. Но вот за смс все равно платить придется, я весь интернет обшарил - бесплатных смс-гейтов нет. Так что выбрал платный, 84 копйки за смс.

Так что кому интересно, пишите сюда.
Так же если народу эта штука все-таки будет нужна - пишите сюда, поддержку каких стоков сделать.
ekeeper вне форума   Ответить с цитированием
Старый 01.04.2009, 15:29   #2
Старожил
 
Регистрация: 30.09.2006
Сообщения: 5,346
Репутация: 3066
Оставлено благодарностей: 849
Получено благодарностей: 3,022
По умолчанию Re: Сервис SMS-уведомлений (о продажах)

Мы вроде уже обсуждали эту штуку.
Devor вне форума   Ответить с цитированием
Старый 01.04.2009, 15:45   #3
SNR
Старожил
 
Регистрация: 22.09.2007
Адрес: Варна
Сообщения: 1,711
Репутация: 1636
Оставлено благодарностей: 80
Получено благодарностей: 1,636
Отправить сообщение для SNR с помощью Skype
По умолчанию Re: Сервис SMS-уведомлений (о продажах)

Я извиняюсь, ибо не видел, что тема обсуждалась. Но про себя могу сказать одно - я все e-mail уведомления отключил, и без них мусора много. А если еще и смс меня долбать будут...
SNR вне форума   Ответить с цитированием
Старый 01.04.2009, 15:45   #4
Модератор
 
Аватар для boroda
 
Регистрация: 11.12.2006
Адрес: Россия
Сообщения: 18,888
Репутация: 10374
Оставлено благодарностей: 3,231
Получено благодарностей: 10,207
По умолчанию Re: Сервис SMS-уведомлений (о продажах)

??? А для чего это надо? Деньги-то заказывать - все равно на сайт выходить. Там и о продажах мимоходом можно полюбопытствовать.
boroda вне форума   Ответить с цитированием
Старый 01.04.2009, 16:19   #5
Новичок
 
Регистрация: 16.03.2009
Сообщения: 37
Репутация: 19
Оставлено благодарностей: 4
Получено благодарностей: 9
По умолчанию Re: Сервис SMS-уведомлений (о продажах)

Devor: Я что-то обсуждения не нашел

boroda: Это вы так часто деньги заказываете? ))))

SNR: Говорю, чтобы не долбали, можно промежуток времени выставить какой надо, чтобы приходила одна смс в день - не особо задолбит.

to All: не, ну я не настаиваю, я просто спросил )))
Я же для себя сделал. Ибо у меня инет трафика мало, часто лазить на сайт не могу, а айсток тяжелый. И я очень часто в дороге.
ekeeper вне форума   Ответить с цитированием
Старый 01.04.2009, 16:36   #6
Старожил
 
Аватар для Dragunov
 
Регистрация: 03.07.2007
Адрес: Киев
Сообщения: 1,902
Репутация: 744
Оставлено благодарностей: 113
Получено благодарностей: 710
По умолчанию Re: Сервис SMS-уведомлений (о продажах)

Если бы Вы еще и СМС-гейт бесплатный прикрутили, многим было бы интересно. Ну и опять же, остается вопрос: многие в скриптах не разбираются, что добавляет опасения за сохранность своих личных данных.
Dragunov вне форума   Ответить с цитированием
Старый 01.04.2009, 17:16   #7
Модератор
 
Аватар для Юрчелло
 
Регистрация: 11.01.2008
Адрес: Турция - Казахстан
Сообщения: 12,079
Репутация: 4309981
Оставлено благодарностей: 14,412
Получено благодарностей: 14,853
По умолчанию Re: Сервис SMS-уведомлений (о продажах)

Можешь скинуть код в личку? В принципе с сайтов МТС Билайн и т.д., можно СМС отправлять бесплатно. Можно ли прикрутить туда?
Юрчелло вне форума   Ответить с цитированием
Старый 01.04.2009, 17:18   #8
Модератор
 
Аватар для Юрчелло
 
Регистрация: 11.01.2008
Адрес: Турция - Казахстан
Сообщения: 12,079
Репутация: 4309981
Оставлено благодарностей: 14,412
Получено благодарностей: 14,853
По умолчанию Re: Сервис SMS-уведомлений (о продажах)

Цитата:
Сообщение от Dragunov
Ну и опять же, остается вопрос: многие в скриптах не разбираются, что добавляет опасения за сохранность своих личных данных.

+1. В принципе, можно выложить в открытый обзор, раз бесплатно. А те, кто врубается , скажут безопасно или нет.
Юрчелло вне форума   Ответить с цитированием
Старый 01.04.2009, 17:24   #9
Новичок
 
Регистрация: 16.03.2009
Сообщения: 37
Репутация: 19
Оставлено благодарностей: 4
Получено благодарностей: 9
По умолчанию Re: Сервис SMS-уведомлений (о продажах)

С сайтов операторов-то бесплатно, но вот а кто вам защитный код с картинки вводить будет? Смс-гейт поднять? не, это слишком ))
ekeeper вне форума   Ответить с цитированием
Старый 01.04.2009, 17:40   #10
Новичок
 
Регистрация: 16.03.2009
Сообщения: 37
Репутация: 19
Оставлено благодарностей: 4
Получено благодарностей: 9
По умолчанию Re: Сервис SMS-уведомлений (о продажах)

Текст смски выглядит примерно так: "IS Sale: +$3.45 ($30.98)"
То есть сколько прибыло денег и какова общая сумма. Увы, вебсервис от IS не выдает номер/имя только что купленного файла.

Вся система состоит из трех элементов:
index.php - файл кода; is.log - файл со старым значением баланса (должны стоять права на чтение и запись - 644, 664 или 666); Команда в планировщик(cron) на хостинге.

Код файла index.php
PHP код:
<?
$serviceName 
"iStockInformer";

// настройки для SMS-гейта devinosms.ru
$phoneNumber "7XXXXXXXXXX";
$smsLogin "XXXX";
$smsPassword "XXXX";
$smsSource "iStock.Info"// имя отправителя нужно будет указать свое в настройках гейта

// Почта
$email "XXXX@mail.ru";

// Настройки iStockphoto
$isLogin "XXXX";
$isPassword "XXXX";

//////////////////////////////////////////////////////////////////////////////////////

$file "./is.log";
$host "http://www.istockphoto.com/webservices/photographer_assistant/server.php?form_name=istockphoto_api_get_user_account_info_form&username=".$isLogin."&password=".$isPassword."&offset=0";

    
$headers  "MIME-Version: 1.0\n"
    
$headers .= "Content-type: text/html; charset=windows-1251\n"
    
$headers .= "To: ".$email."\n"
    
$headers .= "From: ".$serviceName." <".$email .">\n"

$old_balance trim(file_get_contents($file));
if (
$old_balance == ""$old_balance 0;

$xml trim(file_get_contents($host));
if (
$xml == "") exit;


$xml simplexml_load_string($xml);
$new_balance $xml->xpath('//istockphoto-api-response/user-account-info/account-balance');
$new_balance trim($new_balance[0]);

if (
$new_balance $old_balance)
{
    
$smsText "IS Sale: +\$".($new_balance-$old_balance)." (\$".$new_balance.")";
    
file_put_contents($file$new_balance);
    
    
// email
    
@mail($email$smsText$smsText$headers);

    
// sms
    
$smsHost "webservice.devinosms.com/WebService.asmx";

    
$smsData "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n".
        
"<soap12:Envelope xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:soap12=\"http://www.w3.org/2003/05/soap-envelope\">\n".
        
"  <soap12:Body>\n".
        
"    <SendTextMessage xmlns=\"http://gw1.devinosms.com/WebService.asmx\">\n".
        
"      <smsUser>".$smsLogin."</smsUser>\n".
        
"      <password>".$smsPassword."</password>\n".
        
"      <destinationAddress>".$phoneNumber."</destinationAddress>\n".
        
"      <messageData>".$smsText."</messageData>\n".
        
"      <sourceAddress>".$smsSource."</sourceAddress>\n".
        
"      <deliveryReport>false</deliveryReport>\n".
        
"      <flashMessage>false</flashMessage>\n".
        
"      <validityPeriod>0</validityPeriod>\n".
        
"    </SendTextMessage>\n".
        
"  </soap12:Body>\n".
        
"</soap12:Envelope>\n";

    
$Curl = new CURL;
    
$Curl->post($smsHost$smsData);

}


    class 
CURL {
        var 
$callback false;

        function 
setCallback($func_name) {
           
$this->callback $func_name;
        }

        function 
doRequest($method$url$vars) {
           
$ch curl_init();
           
curl_setopt($chCURLOPT_URL$url);
        
//   curl_setopt($ch, CURLOPT_HEADER, 1);
        
curl_setopt($chCURLOPT_HTTPHEADER,array('Content-Type: application/soap+xml; charset=utf-8'));
           
curl_setopt($chCURLOPT_USERAGENT$_SERVER['HTTP_USER_AGENT']);
        
//   curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
           
curl_setopt($chCURLOPT_RETURNTRANSFER1);
           
curl_setopt($chCURLOPT_COOKIEJAR'cookie.txt');
           
curl_setopt($chCURLOPT_COOKIEFILE'cookie.txt');
           if (
$method == 'POST') {
               
curl_setopt($chCURLOPT_POST1);
               
curl_setopt($chCURLOPT_POSTFIELDS$vars);
           }
           
$data curl_exec($ch);
           
curl_close($ch);
           if (
$data) {
               if (
$this->callback)
               {
                   
$callback $this->callback;
                   
$this->callback false;
                   return 
call_user_func($callback$data);
               } else {
                   return 
$data;
               }
           } else {
               return 
curl_error($ch);
           }
        }

        function 
get($url) {
           return 
$this->doRequest('GET'$url'NULL');
        }

        function 
post($url$vars) {
           return 
$this->doRequest('POST'$url$vars);
        }
    }
?>

Команда в cron:
PHP код:
wget -/dev/null http://www.yoursite.com/isinformer/index.php >/dev/null 2>&1 
здесь http://www.yoursite.com/isinformer/index.php - это реальный адрес в интернете по которому можно обратиться к нашему index.php. Период запуска скрипта в cron - уставнивается по желаюнию.

Последний раз редактировалось ekeeper, 01.04.2009 в 17:51.
ekeeper вне форума   Ответить с цитированием
За это сообщение сказали спасибо:
Burjuy (06.04.2009), CyberOnix (06.04.2009), Dragunov (01.04.2009), Юрчелло (02.04.2009)
Ответ


Здесь присутствуют: 1 (пользователей - 0 , гостей - 1)
 
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Фотобанк Лори - открыта информация о продажах Microstock.ru Обсуждение новостей 4 08.10.2008 22:55
Новый сервис romashkaed Опросы 49 09.08.2008 14:47
Можем ли мы не знать о продажах? Nara Fotolia 53 16.05.2008 10:01
Есть ли в BS почтовые уведомления о продажах? Mamontenok BigStockPhoto 12 14.11.2007 20:19


Часовой пояс GMT +4, время: 05:03.


©2006-2010 Microstock.ru   Powered by vBulletin® Copyright ©2000-2008, Jelsoft Enterprises Ltd.   Перевод: zCarot