Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

MyDC.ru _ Технические вопросы по PtokaX _ Функция Core.SetUserInfo

Автор: Iskandark 16.2.2017, 23:21

Есть функция SetUserInfo, которая позволяет изменить MyINFO у пользователя.

Эта функция почему-то изменяет MyINFO пользователя только при его коннекте (UserConnected). А необходимо изменять MyINFO у пользователей, которые уже подключены... Пробовал всевозможные варианты вызова этой функции, ничего не помогает... Изменить MyINFO получается только при коннекте :( В описании такое поведение не заявлено:

Код
Core.SetUserInfo(tUser, iValueId, nil/sValue/iValue, bPermanent)    - Set user info in MyINFO. Max sValue lenght 64 chars, $ and | is not allowed. Use bPermanent when you want to apply change permanently.



В чем может быть проблема? Бага птоки?

Автор: Ksan 17.2.2017, 18:43

Iskandark, у alex82 есть скрипт http://mydc.ru/topic1929.html. Попробуйте использовать тот же алгоритм.

Автор: Iskandark 20.2.2017, 23:28

Цитата(Ksan @ 17.2.2017, 18:43) *
Iskandark, у alex82 есть скрипт http://mydc.ru/topic1929.html. Попробуйте использовать тот же алгоритм.


Спасибо за совет, посмотрел. К сожалению такой алгоритм не подходит, т.к. этот скрипт отправляет всем пользователям новое майнфо, но при этом при заходе на хаб всё равно хотя бы один раз отсылается первоначальное майинфо.

Нужна именно рабочая функция Core.SetUserInfo, которая позволяет изменять майинфо на внутреннем уровне хаба, чтобы при заходе сам хаб отправлял измененное майинфо. Важен именно момент захода.

Автор: Ksan 21.2.2017, 1:50

Iskandark, вы не заметили, в том скрипте майинфо переотправляется всем каждые полсекунды (хотя можно увеличить до 1 секунды (iSendTimer = 1000)). То есть, зашёл юзер, получил порцию неизменённого майинфо, через секунду снова, уже изменённое..
Если я ничего не путаю, конечно..
Вы просто проверьте, от этого же вас не убудет.

Автор: Iskandark 21.2.2017, 22:00

Цитата(Ksan @ 21.2.2017, 1:50) *
Iskandark, вы не заметили, в том скрипте майинфо переотправляется всем каждые полсекунды (хотя можно увеличить до 1 секунды (iSendTimer = 1000)). То есть, зашёл юзер, получил порцию неизменённого майинфо, через секунду снова, уже изменённое..
Если я ничего не путаю, конечно..
Вы просто проверьте, от этого же вас не убудет.


Да, именно так, отправляет майинфо всем пользователям с маленьким интервалом. Мне критично именно самое первое майинфо от хаба, так как я пользуюсь вебклиентом, который обрабатывает самое первое майинфо от хаба. И не хочется грузить хаб и пользователей лишними запросами.

Автор: Ksan 22.2.2017, 0:22

Что-то я совсем перестал понимать, что вам надо.. и чем не устраивает штатная команда и чем не устраивает алгоритм предложенного скрипта, либо их сочетание..
Вы как-нибудь конкретнее определитесь, чего хотите и чего не хотите.
И помните, не все желания исполнимы.

Автор: Iskandark 1.3.2017, 11:16

Цитата(Ksan @ 22.2.2017, 0:22) *
Что-то я совсем перестал понимать, что вам надо.. и чем не устраивает штатная команда и чем не устраивает алгоритм предложенного скрипта, либо их сочетание..
Вы как-нибудь конкретнее определитесь, чего хотите и чего не хотите.
И помните, не все желания исполнимы.


Понятно, что не все желания исполнимы. В совем желании отталкиваюсь от стандартной функции Core.SetUserInfo, которая позволяет менять майнфо пользователя один раз. После чего при заходе другого пользователя ему отправляется единожды измененное (через Core.SetUserInfo) майнфо, при этом не надо.

Но оказалось, что эта функция позволяет установить майнфо только при заходе пользователя.