Перейти к содержимому


Фото
* * * * * 1 Голосов

DrWeb php api


  • Please log in to reply
12 ответов в этой теме

#1 Kira_Belka

Kira_Belka

    Newbie

  • Posters
  • 10 Сообщений:

Отправлено 11 Июнь 2014 - 12:59

Доброго времени суток!

 

Использую DrWeb php api, столкнулась со следующей проблемой,

могу создать станцию и удалить.. временно заблокировать не могу((

точнее не понимаю как это сделать(

поясните пожалуйства.


Youth faithfully,

Kira Blank


#2 Anton Dobkin

Anton Dobkin

    Newbie

  • Members
  • 82 Сообщений:

Отправлено 11 Июнь 2014 - 13:49

Доброго времени суток!

 

Использую DrWeb php api, столкнулась со следующей проблемой,

могу создать станцию и удалить.. временно заблокировать не могу((

точнее не понимаю как это сделать(

поясните пожалуйства.

 

Добрый день,

 

для временной блокировки необходимо задать период:

 

block_begins - начало периода блокировки

block_ends -  окончание периода блокировки

 

Период - Unix timestamp. Для сброса значения можно передать  NULL

 

Пример указания периода временной блокировки при создании станции:

$server_handle = dwavd_init('localhost', 9080, 'admin', 'password');

$st = dwavd_st_init(); 
dwavd_st_set_array($st,
    array (
      'parent_id'=>'c060a9c0-8f75-4a8c-b2da-044aa0eb98b7',
      'tariff_id'=> DWAVD_TARIFF_ID_PREMIUM,
      'block_begins' => time(),
      'block_ends' => time() + 3600
));


dwavd_st_add($server_handle, $st);

Тоже самое будет и при редактировании


Сообщение было изменено Anton Dobkin: 11 Июнь 2014 - 13:52


#3 Kira_Belka

Kira_Belka

    Newbie

  • Posters
  • 10 Сообщений:

Отправлено 11 Июнь 2014 - 16:18

у меня немного по другому..

    public static function getStationInfo($station_id) {
      return self::request(DRWEB_BASE . "/api/3.0/stations/info.ds?id=$station_id");
    }
    //
    public static function createStation($station_id) {
      return self::request(DRWEB_BASE . "/api/3.0/stations/add.ds?id=$station_id");
    }
    //
    public static function deleteStation($station_id) {
      return self::request(DRWEB_BASE . "/api/3.0/stations/delete.ds?id=$station_id");
    }
    //
    public static function getStations() {
      return self::request(DRWEB_BASE . "/avdesk/api/get-customer-info.ds");
    }
  }

?>
 

это в файлике DrWebAPI.php

таких функций как вы предложили нет к сожалению(

 

 

Сообщение было изменено Kira_Belka: 11 Июнь 2014 - 16:19

Youth faithfully,

Kira Blank


#4 Kira_Belka

Kira_Belka

    Newbie

  • Posters
  • 10 Сообщений:

Отправлено 11 Июнь 2014 - 17:53

кажется догадалась :)


Youth faithfully,

Kira Blank


#5 Kira_Belka

Kira_Belka

    Newbie

  • Posters
  • 10 Сообщений:

Отправлено 16 Июнь 2014 - 12:16

не могу понять как правильно задать дату((

    Сваяла блокировку так

// блокировка станций ))))
 public static function blockStation($station_id,$time_begin,$time_end) {
      return self::request(DRWEB_BASE . "/api/3.0/stations/change.ds?id=$station_id&block-begin=$time_begin&block-end=$time_end");
    }

 

$time-begin, $time-end в формате timestamp? или YYYYMMDDhhmmss?


Youth faithfully,

Kira Blank


#6 Kira_Belka

Kira_Belka

    Newbie

  • Posters
  • 10 Сообщений:

Отправлено 16 Июнь 2014 - 15:55

в итоге породила block_drweb_sta($station_id,date("YmdHis",time()),date("YmdHis",time()+$blocktime);

время все таки в YYYYMMDDhhmmss :)


Youth faithfully,

Kira Blank


#7 Anton Dobkin

Anton Dobkin

    Newbie

  • Members
  • 82 Сообщений:

Отправлено 17 Июнь 2014 - 17:50

Мы с вами о разных вещах говорим. Вы используете кастомый класс-обвертку, который выполняет HTTP-запросы к API функциям AVDesk. Эти функции действительно принимают время в формате YYYYMMDDhhmmss.  

 

Я же вам говорил про нативное  расширение для PHP php-avdesk .  Функции расширения принимают время в Unix timestamp (как в примере выше).

 

Еще  классе у вас есть как запросы к старому API (версия 1.0)

/avdesk/api/get-customer-info.ds

так и к актуальному на данный момент, версия 3.0.  Версии API 1.0, 2.0 являются устаревшими и не рекомендуются к использованию. Рекомендую вам посмотреть php-avdesk расширение, интеграция станет намного проще :)

 

Скачать пакет для своей ОС можно с http://secure.av-desk.com, там же есть документация с примерами. Еще примеры можно найти в wiki: https://github.com/DoctorWebLtd/php-avdesk/wiki/Examples



#8 Kira_Belka

Kira_Belka

    Newbie

  • Posters
  • 10 Сообщений:

Отправлено 25 Июнь 2014 - 16:48

Anton, спасибо за разъяснение.. но там спрашивает логин пароль..

насчет блокировки столкнулась со следующей проблемой.. дата начала блокировки и окончания проставляется.. но станция не блокируется.. т.е. состояние станции не меняется.. Оо


Youth faithfully,

Kira Blank


#9 Anton Dobkin

Anton Dobkin

    Newbie

  • Members
  • 82 Сообщений:

Отправлено 25 Июнь 2014 - 19:01



Anton, спасибо за разъяснение.. но там спрашивает логин пароль..

 

Доступ предоставляется по ключу https://secure.av-desk.com/access/

 

насчет блокировки столкнулась со следующей проблемой.. дата начала блокировки и окончания проставляется.. но станция не блокируется.. т.е. состояние станции не меняется.. Оо

 

Станция подключена к серверу? какой диапазон вы указали?

 

Немого про блокировки,

 

существует два вида блокировки:

 

1) Добровольная блокировка - это когда пользователь блокирует подписку на время (до 90 дней), например, уехал в отпуск.  Этот период задается двумя датами  (начало и окончание), это пример я вам и приводил выше. Подписка у пользователя автоматически приостановится при достижении начальной даты периода и автоматически возобновится при достижении конечной даты периода. В  момент приостановки AV-Desk сервер не учитывает эту подписку, билинговые системы также не должны ее учитывать.

 

2) Блокировка или срок допуска (expires)  - блокировка подписки.  Используется, например, когда у клиента закончились деньги. Подписка блокируется при достижении заданной даты,

подписка автоматически не возобновляется, для возобновления необходимо выставить expires=0 или указать дату в будущем. 



#10 Kira_Belka

Kira_Belka

    Newbie

  • Posters
  • 10 Сообщений:

Отправлено 26 Июнь 2014 - 11:42



 

Больше подходит -

 

2) Блокировка или срок допуска (expires)  - блокировка подписки.  Используется, например, когда у клиента закончились деньги. Подписка блокируется при достижении заданной даты,

подписка автоматически не возобновляется, для возобновления необходимо выставить expires=0 или указать дату в будущем. 

 

Как задается подобный сценарий? минимальное время блокировки? я пробовала поставить интервал между датами полчаса. не блокируется :(


Youth faithfully,

Kira Blank


#11 Kira_Belka

Kira_Belka

    Newbie

  • Posters
  • 10 Сообщений:

Отправлено 26 Июнь 2014 - 12:52

просто задаю только дату начала блокировки?!.. :( непонятно :(


Youth faithfully,

Kira Blank


#12 Kira_Belka

Kira_Belka

    Newbie

  • Posters
  • 10 Сообщений:

Отправлено 26 Июнь 2014 - 13:23

получилось! O_o


Сообщение было изменено Kira_Belka: 26 Июнь 2014 - 13:23

Youth faithfully,

Kira Blank


#13 Kira_Belka

Kira_Belka

    Newbie

  • Posters
  • 10 Сообщений:

Отправлено 26 Июнь 2014 - 16:16

эммм.. при блокировке и разблокировке.. приходится перезагружать станцию абонента.. это нормально или я еще где-то накосячила?


Сообщение было изменено Kira_Belka: 26 Июнь 2014 - 16:17

Youth faithfully,

Kira Blank



Читают тему: 0

0 пользователей, 0 гостей, 0 скрытых