diff --git a/doc/node_snapshot.md b/doc/node_snapshot.md index 7097aed8..d9e9a6ff 100644 --- a/doc/node_snapshot.md +++ b/doc/node_snapshot.md @@ -13,6 +13,14 @@ 8-битный `ver` сохраняется как диагностический счётчик; свежесть определяется только timestamp. +Живая телефонная занятость передаётся без изменения структуры NODEINFO: в существующем +`flags` бит `0x04` означает известное состояние, `0x08` — занятость звонком. +Это групповые флаги `TOPO_GROUP_NODE.phone_status`, как флаг рации `0x02`; +они не входят в подпись общей записи и используются только для цвета трубки в GUI. +Без разрешения Android, при выключенной публикации и после ухода узла статус неизвестен. +Решение о начале вызова принимает адресат по локальному состоянию ОС, а не по BGP-подсказке. +Изменения публикуются обычной новой версией NODEINFO во всех CHAT-группах; отдельного опроса и таймера нет. + Профиль endpoint в SOCKMETA содержит независимые `mapping` и `inbound`, источник `source`. ID и время измерения не передаются: последний успешный профиль действует до явного изменения endpoint или подтверждённого нового результата. Повторная diff --git a/src/chat/chat_member.h b/src/chat/chat_member.h index b0051cea..6fd5c100 100644 --- a/src/chat/chat_member.h +++ b/src/chat/chat_member.h @@ -10,6 +10,7 @@ * [8] online uint8_t * [9] is_self uint8_t * [10] flags uint8_t 0x01=supernode 0x02=admin 0x04=moder 0x08=deleted 0x10=radio 0x20=local radio mute + * 0x40=phone status known, 0x80=busy on a call (live BGP hint) * [11-12] rtt uint16_t LE (ms, 0xFFFF=нет данных) * [13] nat_type uint8_t ADDR_TYPE_* * [14] storage uint8_t