1

Remote API. svc=unit/update_phone не работает?

(edited by a_titeev 27/09/2012 12:18:29)

Topic: Remote API. svc=unit/update_phone не работает?

Добрый день! При использовании unit/update_phone выдает ошибку error:6.
А вот, например, unit/update_device_type работает нормально...
Что за ошибка под кодом 6 - такая не описана в документации вообще - идут 5, потом 7. Подскажите правильный формат  запроса на обновление номера телефона.

И еще, параллельно, вопрос как получить список уже заданных Custom Fields объектов. Хотя бы как нибудь распознать fieldId?

2

Remote API. svc=unit/update_phone не работает?

Re: Remote API. svc=unit/update_phone не работает?

Запрос:
http://url/wialon/ajax.html?svc=unit/update_phone&sid=sid&
params={
    "itemId":UnitId,
    "phoneNumber":"+123456789"
    }
Пришел ответ:
[{"ph":"+123456789"}]
Может у вас не достаточно прав, или телефон не валидный. Попробуйте сделать те же действия через сайт.

Mobile Development
Gurtam
3

Remote API. svc=unit/update_phone не работает?

(edited by a_titeev 27/09/2012 12:46:59)

Re: Remote API. svc=unit/update_phone не работает?

kopa wrote:

Запрос:
http://url/wialon/ajax.html?svc=unit/update_phone&sid=sid&
params={
    "itemId":UnitId,
    "phoneNumber":"+123456789"
    }
Пришел ответ:
[{"ph":"+123456789"}]
Может у вас не достаточно прав, или телефон не валидный. Попробуйте сделать те же действия через сайт.

Почему у вас двоеточие после params? у меня в таком случае error:4 сразу...
Через сайт нормально все вроде добавляется и обновляется.
Ошибка 6 - что это может быть? запрос вроде обычный делаю как на все остальное params={"itemId":522845, "phoneNumber":"+12345678915"}

4

Remote API. svc=unit/update_phone не работает?

Re: Remote API. svc=unit/update_phone не работает?

a_titeev
с двоеточием ошибка, там равно должно быть, поправил.
error 6 возвращается при неудачной попытке смены телефонного номера, причины - объект с таким номером уже существует или номер не валидный.

Mobile Development
Gurtam
5

Remote API. svc=unit/update_phone не работает?

Re: Remote API. svc=unit/update_phone не работает?

a_titeev, скорее всего номер, который вы задаёте, уже где-то установлен. Попробуйте для эксперимента поставить любой другой номер (номера).

6

Remote API. svc=unit/update_phone не работает?

Re: Remote API. svc=unit/update_phone не работает?

nevl wrote:

a_titeev, скорее всего номер, который вы задаёте, уже где-то установлен. Попробуйте для эксперимента поставить любой другой номер (номера).

пробовал любые. может я что-то не пойму, но ошибка 6 возвращается в любом случае, даже если свой номер телефона ставлю или любой другой. а вот через сайт - все в порядке, т.е. не с правами

пример запроса прямо из фиддлера с сочиненным номером:

POST /wialon/ajax.html?svc=unit/update_phone&sid=d1ae006f0c3cdd2b0c524ae85572059f&params={"itemId":523246,"phoneNumber":"+79290010101"} HTTP/1.1

ответ:

{"error":6}

меняю цифры на любые, ответ такой-же. по каким правилам определяется валидность номера?

7

Remote API. svc=unit/update_phone не работает?

Re: Remote API. svc=unit/update_phone не работает?

a_titeev wrote:

а вот через сайт - все в порядке, т.е. не с правами

Сайт выполняет запрос через тот же SDK. Откройте вкладку сеть (network) в консоле разработчика браузера, и посмотрите какой запрос уходит и какой приходит ответ, и сравните с тем который отправляете вы.

Mobile Development
Gurtam
8

Remote API. svc=unit/update_phone не работает?

Re: Remote API. svc=unit/update_phone не работает?

kopa wrote:
a_titeev wrote:

а вот через сайт - все в порядке, т.е. не с правами

Сайт выполняет запрос через тот же SDK. Откройте вкладку сеть (network) в консоле разработчика браузера, и посмотрите какой запрос уходит и какой приходит ответ, и сравните с тем который отправляете вы.

разница в том что запрос делается через core/batch и команда передается как параметры формы
params    [{"svc":"unit/update_phone","params":{"itemId":523910,"phoneNumber":"+76468382457"}}]
sid    здесь сид

Добавлено спустя   4 минуты  22 секунды:

a_titeev wrote:
kopa wrote:
a_titeev wrote:

а вот через сайт - все в порядке, т.е. не с правами

Сайт выполняет запрос через тот же SDK. Откройте вкладку сеть (network) в консоле разработчика браузера, и посмотрите какой запрос уходит и какой приходит ответ, и сравните с тем который отправляете вы.

разница в том что запрос делается через core/batch и команда передается как параметры формы
params    [{"svc":"unit/update_phone","params":{"itemId":523910,"phoneNumber":"+76468382457"}}]
sid    здесь сид

все кажись разобрался. urlencode не применялся в знаку "+" в номере. действительно номер считался невалидным. спасибо... просто заменил и все вроде заработало...

9

Remote API. svc=unit/update_phone не работает?

(edited by boristar 09/01/2013 10:26:57)

Re: Remote API. svc=unit/update_phone не работает?

все кажись разобрался. urlencode не применялся в знаку "+" в номере. действительно номер считался невалидным. спасибо... просто заменил и все вроде заработало..

У меня возникла точно такая же проблема. Чем можно заменить "+", чтобы все корректно работало?

10

Remote API. svc=unit/update_phone не работает?

Re: Remote API. svc=unit/update_phone не работает?

+     %2B

http://www.w3schools.com/tags/ref_urlencode.asp

Mobile Development
Gurtam
11

Remote API. svc=unit/update_phone не работает?

Re: Remote API. svc=unit/update_phone не работает?

Спасибо. Проблема решена.