aboutsummaryrefslogtreecommitdiff
path: root/src/helpers/BaseChatMesh.cpp
AgeCommit message (Collapse)Author
2026-03-03Clarify comment wording: 1 = direct (0 hops)Wouter Bijen
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-03Address PR review: subtract-1 encoding and clamp max_hopsWouter Bijen
- Change > to >= so stored value 1 means direct/0-hop only (liamcottle) - Clamp max_hops to 63 on write since getPathHashCount() caps at 63 (robekl) - Update comments to reflect encoding: 0=no limit, 1=direct only, N=up to N-1 hops Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02Add configurable max hops filter for auto-add contactsWouter Bijen
Filter auto-add of new contacts by hop count (issues #1533, #1546). Setting is configurable from the companion app via extended CMD_SET/GET_AUTOADD_CONFIG protocol (0 = no limit, 1-63 = max hops). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-21* refactor of Contact/Client out_path_len (stored in files), from signed to ↵Scott Powell
unsigned byte (+2 squashed commits) Squashed commits: [f326e25] * misc [fa5152e] * new 'path mode' parsing in Dispatcher
2026-02-01only store advblob when adding/updating contactstaco
2026-01-16always send PUSH_CODE_NEW_ADVERT when advert was not added to contacts[]taco
2026-01-15bootstrap RTC from contact.lastmod and improve slot overwrite logictaco
slot overwrite logic can now safely use contact.lastmod to find oldest contact for overwrite
2026-01-15refactor: add populateContactFromAdvert()taco
2026-01-15contacts: granular autoadd and overwrite-oldesttaco
2026-01-03* Repeater: new anon request sub-type: ANON_REQ_TYPE_REGIONS (rate limited ↵Scott Powell
to max 4 every 3 mins) * Companion: new CMD_SEND_ANON_REQ command (reply with existing RESP_CODE_SENT frame)
2025-12-06* refactor: on-demand getSharedSecret()Scott Powell
2025-12-06calculate shared_secret on demandtaco
2025-11-20Changed uint to a uint8_tWinston Lowe
2025-11-04* Mesh: new sendFlood() overload with transport codes.Scott Powell
* BaseChatMesh: sendFloodScoped(), for overriding with some outbound 'scope' / TransportKey * companion: new 'send_scope' variable.
2025-10-31* Companion: Now using transport codes { 0, 0 } when Share contact zero hop.Scott Powell
* Repeater: onAdvertRecv(), adverts via Share now NOT added to neighbours table
2025-09-16Merge branch 'dev' into reciprocal-path-retryScott Powell
2025-09-15update lastmod when a new message is receivedliamcottle
2025-09-08* proposed change for re-trying reciprocal path transmitScott Powell
2025-07-31* Companion: experimental CMD_SEND_DISCOVERY_REQ -> PUSH_CODE_DISCOVERY_RESPONSEScott Powell
2025-07-16* companion: optional double ACKs, new prefs.multi_acksScott Powell
2025-07-15Merge branch 'dev' into double-acksScott Powell
2025-07-14* companion: added CMD_SEND_BINARY_REQ (50)Scott Powell
2025-06-23* new PAYLOAD_TYPE_MULTIPARTScott Powell
* experimental double ACK's (at each hop), sent 300ms apart (direct mode only)
2025-06-22* companion: new 'advert_loc_policy' pref. Defaults to ADVERT_LOC_NONE (ie. ↵Scott Powell
do Not share location in adverts)
2025-06-18* companion: new CMD_GET_ADVERT_PATH -> RESP_CODE_ADVERT_PATHScott Powell
2025-06-06* companion: refactor of all filesystem access to new DataStore moduleScott Powell
2025-06-04* SERVER_RESPONSE_DELAY now applied to: login responses, companion telemetry ↵Scott Powell
responses
2025-06-03* Companion now can be configured with TXT_ACK_DELAY (default is 200ms)Scott Powell
2025-05-16* companion: fix for importContact(). Now removes the packet-hash from ↵Scott Powell
table, before 'replaying'
2025-05-03* companion: new CMD_SEND_TELEMETRY_REQ, PUSH_CODE_TELEMETRY_RESPONSEScott Powell
2025-05-03* new: SensorManagerScott Powell
* BasChatMesh: new onContactRequest(), for PAYLOAD_TYPE_REQ handling. * companion, repeater and room_server: now with basic 'plumbing' to handle REQ_TYPE_GET_TELEMETRY_DATA (0x03). * dependency: added CayenneLPP to libdeps * all target.* modules now with a stub 'sensors' object.
2025-04-12Companion: new 'manual_add_contacts' pref. New PUSH_CODE_NEW_ADVERT framesScott Powell
2025-04-11* added Packet::getRawLength() helperScott Powell
2025-03-22* workaround for > 3 retry attemptsScott Powell
2025-03-17* redesigned TRACE packet structureScott Powell
2025-03-15Merge branch 'dev' into traceScott Powell
# Conflicts: # examples/companion_radio/main.cpp # src/Dispatcher.cpp
2025-03-13* missing paramScott Powell
2025-03-11* companion: channel namesScott Powell
2025-03-11* Companion: new CMD_GET_CHANNEL, CMD_SET_CHANNELScott Powell
2025-03-07* companion: FIRMWARE_VER_CODE now bumped to 3.Scott Powell
* companion: new RESP_CODE_CONTACT_MSG_RECV_V3, and _CHANNEL_MSG_RECV_V3. (now with packet SNR included)
2025-03-07Merge branch 'dev' into traceScott Powell
# Conflicts: # src/Dispatcher.cpp # src/Mesh.cpp # src/helpers/BaseChatMesh.cpp
2025-03-06* Room Server post ACK bug fix!Scott Powell
2025-03-03* miscScott Powell
2025-03-02* companion radio: connection status now supported (Keep_alive pings, etc)Scott Powell
2025-03-02* companion radio: support for TXT_TYPE_SIGNED_PLAINScott Powell
2025-02-27* various changes for CLI support via companion radioScott Powell
2025-02-24* companion radio: new CMD_SEND_LOGIN, CMD_SEND_STATUS_REQScott Powell
2025-02-22* strncpy() refactor/fixScott Powell
2025-02-19* added RTCClock::getCurrentTimeUnique(), for when timestamps need to be ↵Scott Powell
unique (if temp rapid-fire)
2025-02-17* new Packet type: PAYLOAD_TYPE_TRACEScott Powell