esp8266ndn
NDN Arduino library for ESP8266 and more
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | List of all members
esp8266ndn::UnixTime Class Reference

Retrieve and maintain UnixTime clock. More...

#include <unix-time.hpp>

Inherits ndnph::PacketHandler.

Public Member Functions

 UnixTime (ndnph::Face &face)
 
void begin (int interval=60000)
 Enable UnixTime requests. More...
 
- Public Member Functions inherited from ndnph::PacketHandler
 PacketHandler ()=default
 Construct without adding to Face. More...
 
 PacketHandler (Face &face, int8_t prio=0)
 Construct and add handler to Face. More...
 

Additional Inherited Members

- Public Types inherited from ndnph::PacketHandler
using PacketInfo = Face::PacketInfo
 
- Protected Member Functions inherited from ndnph::PacketHandler
virtual ~PacketHandler ()
 Remove handler from Face. More...
 
FacegetFace () const
 
const PacketInfogetCurrentPacketInfo () const
 Retrieve information about current processing packet. More...
 
template<typename Packet >
bool send (Region &region, const Packet &packet, PacketInfo pi={})
 Synchronously transmit a packet. More...
 
template<typename Packet , typename... PacketInfoModifier>
bool send (Region &region, const Packet &packet, const PacketInfoModifier &... pim)
 Synchronously transmit a packet. More...
 
template<typename Packet , typename... Arg, typename = typename std::enable_if< !std::is_base_of<Region, typename std::decay<Packet>::type>::value>::type>
bool send (const Packet &packet, Arg &&... arg)
 Synchronously transmit a packet. More...
 
template<typename... Arg>
bool reply (Arg &&... arg)
 Synchronously transmit a packet in reply to current processing packet. More...
 

Detailed Description

Retrieve and maintain UnixTime clock.

This module requires a UnixTime service running in the local network.

See also
https://github.com/yoursunny/ndn6-tools/blob/main/unix-time-service.md

This module periodically retrieves the current Unix timestamp from the service, and then updates the system clock via ndnph::port::UnixTime::set function. The current Unix time is then available via ndnph::port::UnixTime::now function as well as gettimeofday() and other system functions.

This module cannot be used together with other time synchronization mechanisms such as lwip SNTP client.

Constructor & Destructor Documentation

◆ UnixTime()

esp8266ndn::UnixTime::UnixTime ( ndnph::Face face)
explicit

Member Function Documentation

◆ begin()

void esp8266ndn::UnixTime::begin ( int  interval = 60000)

Enable UnixTime requests.

Parameters
intervalhow often to refresh time (millis), minimum 5000ms.

The documentation for this class was generated from the following file: