nedoPC.org

Community of electronics hobbyists established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 22 Oct 2021 09:47



Reply to topic  [ 66 posts ]  Go to page Previous  1, 2, 3, 4, 5  Next
Project SprinterNet 
Author Message
Admin
User avatar

Joined: 09 Jan 2003 00:22
Posts: 19933
Location: Silicon Valley
Reply with quote
По базе данных можно начать с такой вот таблицы пользовательской активности:
Code:
CREATE TABLE spr_action (
     id int unsigned primary key not null auto_increment,
     op char(8),
     port smallint,
     usr char(16) not null default "unknown",
     adr char(16) not null default "127.0.0.1",
     utime int unsigned not null default 0,
     index spr_ac (op,usr,adr,utime)
) ENGINE=InnoDB;

Соответственно счётчиком посещений станет SELECT COUNT(*) FROM spr_action;

P.S. Скорее счётчиком должно быть SELECT MAX(id) FROM spr_action; т.к. активность предполагает подчищаться по мере накопления (возможно буду суммировать по месяцам и удалять детали)

P.P.S. 13 июля 2021 года заменил тип varchar на char у всех текстовых полей чтобы индексы быстрее работали

_________________
:eugeek: https://twitter.com/Shaos1973


11 Feb 2021 05:31
Profile WWW
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
Shaos wrote:
А вот так может выглядеть главная страница при заходе по https://

А вот когда зарегистрированный пользователь Спринтера полезет к тебе туда по http:// -
там будет какая-то упрощенная, адаптированная под Спринтер страница?

_________________
iLavr


11 Feb 2021 08:51
Profile
Admin
User avatar

Joined: 09 Jan 2003 00:22
Posts: 19933
Location: Silicon Valley
Reply with quote
Lavr wrote:
Shaos wrote:
А вот так может выглядеть главная страница при заходе по https://

А вот когда зарегистрированный пользователь Спринтера полезет к тебе туда по http:// -
там будет какая-то упрощенная, адаптированная под Спринтер страница?

Со Спринтера будет авторизация через программу - не через веб-страничку - т.е. Спринтер будет посылать специально сформированный запрос на HTTP-сервер и анализировать ответ.
После успешной авторизации в каждый запрос к HTTP будет добавляться sid, который вернул сервер в ответ на успешную аутентификацию, и это откроет пользователю закрытые ресурсы.

_________________
:eugeek: https://twitter.com/Shaos1973


11 Feb 2021 21:19
Profile WWW
Admin
User avatar

Joined: 09 Jan 2003 00:22
Posts: 19933
Location: Silicon Valley
Reply with quote
Теперь можно лицезреть главную страничку с самодельным счётчиком :mrgreen:

https://sprinternet.io

_________________
:eugeek: https://twitter.com/Shaos1973


12 Feb 2021 05:32
Profile WWW
Admin
User avatar

Joined: 09 Jan 2003 00:22
Posts: 19933
Location: Silicon Valley
Reply with quote
Shaos wrote:
Теперь можно лицезреть главную страничку с самодельным счётчиком :mrgreen:

https://sprinternet.io

За пару дней уже 300 раз страничка показалась :)


Attachments:
Screenshot from 2021-02-14 20-06-23.png
Screenshot from 2021-02-14 20-06-23.png [ 17.03 KiB | Viewed 2284 times ]

_________________
:eugeek: https://twitter.com/Shaos1973
14 Feb 2021 22:09
Profile WWW
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
Shaos wrote:
Shaos wrote:
Теперь можно лицезреть главную страничку с самодельным счётчиком :mrgreen:
https://sprinternet.io
За пару дней уже 300 раз страничка показалась :)

Ты уж извини, я как в том анекдоте:"А вшивый - о бане..." :wink:
Я всё к тому, что если зарегистрированный пользователь Спринтера зайдёт на ТАКУЮ страничку,
то в каком виде он её увидит на своём экране? (я вижу, что тут https://)

Меня именно этот вопрос интересует:"Что увидят зарегистрированные пользователи Спринтера в этом самом SprinterNet?"
То, что технические вопросы преодолимы - это сомнения не вызывает...

_________________
iLavr


16 Feb 2021 17:37
Profile
Admin
User avatar

Joined: 09 Jan 2003 00:22
Posts: 19933
Location: Silicon Valley
Reply with quote
Lavr wrote:
Shaos wrote:
Shaos wrote:
Теперь можно лицезреть главную страничку с самодельным счётчиком :mrgreen:
https://sprinternet.io
За пару дней уже 300 раз страничка показалась :)

Ты уж извини, я как в том анекдоте:"А вшивый - о бане..." :wink:
Я всё к тому, что если зарегистрированный пользователь Спринтера зайдёт на ТАКУЮ страничку,
то в каком виде он её увидит на своём экране? (я вижу, что тут https://)

Меня именно этот вопрос интересует:"Что увидят зарегистрированные пользователи Спринтера в этом самом SprinterNet?"
То, что технические вопросы преодолимы - это сомнения не вызывает...

Ну в https:// со Спринтера можно будет попасть только через шлюз (т.е. тот же самый sprinternet.io, но на порту 8080 с параметром op=https и только после успешной аутентификации средствами Спринтера) - скорее всего я поставлю там заглушку, что если Спринтер пытается через шлюз залезть на https://sprinternet.io, то его надо вывести вместо этого на главную страницу http://sprinternet.io:8080, где будет список ресурсов именно для Спринтера.

_________________
:eugeek: https://twitter.com/Shaos1973


16 Feb 2021 18:54
Profile WWW
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
Shaos wrote:
...если Спринтер пытается через шлюз залезть на https://sprinternet.io, то его надо вывести вместо этого на главную страницу http://sprinternet.io:8080, где будет список ресурсов именно для Спринтера.

А у Спринтера есть какой-то браузер? Или как-то иначе зарегистрированный пользователь Спринтера
увидит "список ресурсов именно для Спринтера"?

_________________
iLavr


16 Feb 2021 19:25
Profile
Admin
User avatar

Joined: 09 Jan 2003 00:22
Posts: 19933
Location: Silicon Valley
Reply with quote
Lavr wrote:
Shaos wrote:
...если Спринтер пытается через шлюз залезть на https://sprinternet.io, то его надо вывести вместо этого на главную страницу http://sprinternet.io:8080, где будет список ресурсов именно для Спринтера.

А у Спринтера есть какой-то браузер? Или как-то иначе зарегистрированный пользователь Спринтера
увидит "список ресурсов именно для Спринтера"?

Будет :)

На http:// браузер будет ходить напрямую, а на https:// через шлюз и по предварительно разрешённому списку сайтов

_________________
:eugeek: https://twitter.com/Shaos1973


16 Feb 2021 19:28
Profile WWW
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
Shaos wrote:
Lavr wrote:
А у Спринтера есть какой-то браузер? Или как-то иначе зарегистрированный пользователь Спринтера
увидит "список ресурсов именно для Спринтера"?
Будет :)
На http:// браузер будет ходить напрямую, а на https:// через шлюз и по предварительно разрешённому списку сайтов

Ты извини, что я как-бы несколько навязчив в этом вопросе, но я именно это и стремился услышать,
что ты мне, наконец, сказал.

И я как раз хочу подсказать одну мысль, которая, как мне кажется, может быть полезной...
Спринтероводов, как мы видим, не так уж и много, и вполне очевидно, что пользователей ZX Spectrum
в общем-то гораздо больше.
И мы с тобой вот тут обсуждали, что ни ZX Spectrum-у, ни более мощному Спринтер-у современный
HTML в общем-то не потянуть непринуждённо
. И тормоза будут, и всякие артефакты графики.

Может быть имеет смысл в этой связи поддержать WML — язык разметки документов для использования
в сотовых телефонах и других мобильных устройствах по стандарту WAP
?

Это практически - очень упрощенный HTML, который поддерживали слабенькие сотовые телефоны
безо всяких там Андроидов и прочих Яблок-ОС, и поддерживали весьма шустро!
Я этим занимался в своё время, и заверяю тебя со всей ответственностью!

Если сделать поддержку WML, то, я думаю и все ZX Spectrum-ы, а уж тем более Спринтер-ы смогут
серфить по сети не напрягаясь.
Для Спринтер-ов можно HTML поддержать опционно...
Твой Project SprinterNet может стать и ZX SpectrumNet и со старых мобильников по нему серфить будет можно.

Ну то есть - если заново потратить усилия на Браузер, то, может быть, с большей пользой?

_________________
iLavr


17 Feb 2021 08:01
Profile
Admin
User avatar

Joined: 09 Jan 2003 00:22
Posts: 19933
Location: Silicon Valley
Reply with quote
ненене - никаких вапов :)

_________________
:eugeek: https://twitter.com/Shaos1973


17 Feb 2021 11:38
Profile WWW
Fanat

Joined: 05 Jul 2020 15:08
Posts: 87
Location: Ижевск
Reply with quote
ChaosNet?


18 Feb 2021 21:39
Profile WWW
Admin
User avatar

Joined: 09 Jan 2003 00:22
Posts: 19933
Location: Silicon Valley
Reply with quote
dvarkin wrote:

нет - зачем? тут будет обычный TCP/IP (например протокол HTTP) и UDP/IP (свой собственный протокол передачи файлов между PC и Спринтером)

_________________
:eugeek: https://twitter.com/Shaos1973


18 Feb 2021 22:31
Profile WWW
Admin
User avatar

Joined: 09 Jan 2003 00:22
Posts: 19933
Location: Silicon Valley
Reply with quote
Shaos wrote:
Shaos wrote:
op=unixtime - возвращает количество секунд прошедших с нуля часов 1 января 1970 года относительно сейчас либо относительно момента указанного в параметрах запроса (url-encoded param)

можно расширить ответ (попутно поменяв имя операции с unixtime на просто time) - следом за 4 байтами unixtime (8 шестнадцатиричных символов) в хексе возвращать дату и время в нулевой таймзоне (GMT): YYYYMMDDHHMMSS (7 байтов или 14 символов в BCD - т.е. всего 22 символа):
Code:
<?php
$param = $_GET["param"];
if($param){
  $time = strtotime(urldecode($param));
} else {
  $time = time();
}
echo dechex($time),gmdate("YmdHis",$time);;
?>
это может оказаться полезным скажем для настройки часов Спринтера - надо будет в EEPROM сохранять таймзону и флаг летнего перевода времени ну или просто смещение от GMT, которое пользователю надо будет ручками менять 2 раза в год для стран, где летом время сдвигается:

Image
P.S. В мире существует целый ряд временных зон с "нецелым" смещением от GMT: https://www.worldtimeserver.com/learn/unusual-time-zones/
Самые странные из них:
Quote:
...
As an example, at 12:00 AM in an area using Coordinated Universal Time (UTC) it is 5:30 AM in India.
...
Nepal is fifteen minutes ahead of India's time zone. That means, when it is 12:00 AM in Greenwich -- at the Prime Meridian -- it is 5:45 AM in the greater Nepal area and Kathmandu.
...
Australia : Eucla and nearby towns use UTC + 8:45.
...
The Chatham Islands -- located in New Zealand -- observe Chatham Standard Time which has a forty-five minute offset from Coordinated Universal Time. It is the only area that uses such an alteration.
The offset is labeled as UTC + 12:45 during winter months and UTC + 13:45 during summer months when Daylight Saving is active.

Соответственно в EEPROM карточки SprinterNet надо будет сохранять таймзону с шагом в 15 минут (четверть часа) - соответственно надо уметь представлять числа от -12 до +14 с шагом в 1/4 (см. https://www.timeanddate.com/time/map/) - можно умножить количество смещаемых часов (со знаком и с дробной частью) на 4 и в пределах байта это будет значение от -48 (#D0) до +56 (#38), причём например таймзона +13:45 (сейчас на островах Chatham т.к. у них там летнее время в данный момент) будет представлено как +55 (#37).

пример запуска вышеприведённого скрипта с параметром: http://shaos.net/test/time.php?param=Jun%201%2002:42:33%20PDT%202021
Code:
60b6010920210601094233

пример запуска без параметров: http://shaos.net/test/time.php
Code:
602ff60820210219173152

вот пример z80 кода для перевода BCD в байт от caro:
Code:
;****************************
;   a(BCD) => a(BIN)
;   [00h..99h] -> [0..99]
;****************************
bcd2bin:
   push   bc
   ld   c,a
   and   0f0h
   srl   a
   ld   b,a
   srl   a
   srl   a
   add   a,b
   ld   b,a
   ld   a,c
   and   0fh
   add   a,b
   pop   bc
   ret
https://www.msx.org/forum/development/msx-development/bcdhex-conversion-asm

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

_________________
:eugeek: https://twitter.com/Shaos1973


19 Feb 2021 11:32
Profile WWW
Admin
User avatar

Joined: 09 Jan 2003 00:22
Posts: 19933
Location: Silicon Valley
Reply with quote
Количество посещений головной https странички перевалило за 1000 :)


Attachments:
Screenshot from 2021-02-26 01-02-42.png
Screenshot from 2021-02-26 01-02-42.png [ 23.4 KiB | Viewed 2080 times ]

_________________
:eugeek: https://twitter.com/Shaos1973
26 Feb 2021 03:05
Profile WWW
Display posts from previous:  Sort by  
Reply to topic   [ 66 posts ]  Go to page Previous  1, 2, 3, 4, 5  Next

Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  

Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.