
Ср окт 12, 2011 5:05 pm Ср окт 12, 2011 5:05 pm

Чат со мной
Hobit писал(а):Сервер поправлен, залит на сайт - http://www.nsoft-s.com/downloadmychat.html
http://www.nsoft-s.com/forum/viewtopic.php?f=35&t=1963
Версия сервера не изменена, для обновления нужно просто установить поверху. Скрипт изменять не нужно.
Volldemar писал(а):Скопипастил текст скрипта -поздравлялки, но на сервере, в редакторе скриптов, русские буквицы отображаются крякозяблами. Какую кодировку воспринимает редактор скриптов сервера?
Hobit писал(а):Попробуйте сами это сделать, если есть желание. Скрипт открыт, API тоже. Скриптовый движок для того и создавался, чтобы пользователи могли сами им пользоваться и расширяли возможности MyChat. Хотя бы попытайтесь.
Hobit писал(а):Попробуйте. Хватит школьных знаний по Паскалю, я вас уверяюА что неясно - мы расскажем и поможем. Тем более, в скрипте есть комментарии, поясняющие, что и как. Для людей же делали.
var
wYear, wMonth, wDay, wHour, wMinute, wSecond, wMilliSec: word;
begin
DecodeDateTime(Now, wYear, wMonth, wDay, wHour, wMinute, wSecond, wMilliSec);
if (wHour = 9) and (wMinute = 20) then {bla-bla-bla};
end;
var
s: string;
iYear: integer;
begin
s := mGetUserAttribute(12, 'HOME_BIRTHDAY');
if s <> '' then iYear := strtoint(copy(s, 7, 4))
else iTear := -1;
end;
Проблему решил следующим способом:
В папке System32 файл C_1252.NLS меняем на C_1251.NLS(любым, удобным способам).
Для этого сначала дал себе права владельца, переименовал 1252 в 1252.old, а 1251 скопировал в другую директорию и там его переименовал в C_1252.NLS. Затем переименованный файл скопировал в директорию System32 и перезагрузился. После перезагрузки файл с расширением "old" можно удалить. Теперь все буквы на месте и показывают правильно. Система обращется к 1252, находит там 1251 и работает.
Способ нагуглил на просторах инета
Алексей Пикуров писал(а):Здравствуйте, Денис.
Попробуйте:
viewtopic.php?p=8396#p8396
viewtopic.php?p=7123#p7123
ovdt писал(а):iSex := mGetUserSex(iUIN); // получение пола пользователя
sUserFullName := mGetUserFullName(iUIN, 0); // ... и полного имени
var
sJSON: string;
iSex: integer;
begin
sJSON := mGetUserDataAsJSON(6, 'Sex');
if JSONGetInteger(sJSON, "Sex", iSex) = 0 then
// all ok
else
// error
end.
sUserFullName := mGetUserFullNameByPreset(6, 0)
Ага, понял, как. Мой ключ до версии сервера 5.7... Где его качнуть и отработает ли там скрипт?
// ---------------------------------------
// Script created by Alexey Pikurov ([email protected])
// 18.01.2021 20:45:13
// ---------------------------------------
var
iUIN: integer;
dtExpired: double;
sUsersList, sUserFullName, sMsg, sGender, sToday: string;
begin
dtExpired := Now; // получаем текущую дату
sToday := FormatDateTime('ddmmyyyy', dtExpired);
// если мы уже работали сегодня, то ничего не делаем, чтобы
// не поздравить одних и тех же людей по второму кругу
if mDBStorageGetData('birthday-script') = sToday then exit
else mDBStorageSetData('birthday-script', sToday);
sUsersList := mGetBirthdayUsers(dtExpired); // получаем список UIN-ов людей, у которых сегодня день рождения
while length(sUsersList) > 0 do begin
iUIN := StrToInt(Fetch(sUsersList, ','));
sUserFullName := mGetUserFullNameByPreset(iUIN, 0); // 0 — "Александр Сергеевич Пушкин"
if mGetUserAttribute(iUIN, 'Sex') = '2' then sGender := 'её' // получение пола пользователя
else sGender := 'его';
// формируем строку для поздравления
sMsg := 'Сегодня ' + sUserFullName + ' празднует день рождения!' +
CRLF +
'Подравляем ' + sGender + ' с этим праздником и желаем всего самого ' +
'светлого и доброго!' +
CRLF +
'Пусть жизнь дарит Вам побольше ярких моментов и сбудутся все самые смелые и заветные желания!'+
CRLF +
'Желаем чтобы в Вашем доме всегда царили счастье и понимание.'+
CRLF +
'И пусть Вас окружают только искренние, верные, надежные друзья и добрые люди. ' +
CRLF +
'С уважением, администрация!';
// если сегодня суббота или воскресенье, то добавляем нужное количество дней до понедельника
case DayOfTheWeek(dtExpired) of
6: IncDay(dtExpired, 2);
7: IncDay(dtExpired, 1);
end;
// ...и размещаем поздравление на доске объяалений, чтобы было видно всем пользователям
mAddNewBBSMessage(sMsg, dtExpired, false);
end;
end.
скрипт "навешивается" на событие "User defined script"\ "Every hour".
кто вам мешает-то?
Алексей Пикуров писал(а):скрипт "навешивается" на событие "User defined script"\ "Every hour".
MyChat Server [*] (01.05.2025) (skype import[…]
Добрый день. Предоставьте протокол клиента, пожалу[…]
Проекты в которых настроен доступ к "своим з[…]
Спасибо, сейчас все работает и прочих багов обнару[…]
Здравствуйте. Да. Справка, пошаговое руководство[…]
Окей, на скриншоте, что вы показываете — версия 20[…]
Добавили специальную проверку на сервер, если не с[…]
Ну мы не относимся к разряду всемогущих и всезнающ[…]
Всё ок, делайте тему, разберемся. Логи с клиентов […]
Ок, считаем пока ситуацию временной магией, не свя[…]
Здравствуйте, Виталий. Отделил ваше сообщение в […]
Разрешили эти расширения для атача в форум.