@@ -54,7 +54,7 @@ static const char _ssdp_notify_template[] PROGMEM =
54
54
55
55
static const char _ssdp_packet_template[] PROGMEM =
56
56
" %s" // _ssdp_response_template / _ssdp_notify_template
57
- " CACHE-CONTROL: max-age=%u\r\n " // SSDP_INTERVAL
57
+ " CACHE-CONTROL: max-age=%u\r\n " // _interval
58
58
" SERVER: %s UPNP/1.1 %s/%s\r\n " // _servername, _modelName, _modelNumber
59
59
" USN: uuid:%s%s\r\n " // _uuid, _usn_suffix
60
60
" %s: %s\r\n " // "NT" or "ST", _deviceType
@@ -115,6 +115,7 @@ _server(0),
115
115
_timer(0 ),
116
116
_port(80 ),
117
117
_ttl(SSDP_MULTICAST_TTL),
118
+ _interval(SSDP_INTERVAL),
118
119
_replySlots{NULL },
119
120
_respondToAddr{0 ,0 ,0 ,0 },
120
121
_respondToPort (0 ),
@@ -211,7 +212,7 @@ void SSDPClass::_send(ssdp_method_t method){
211
212
int len = snprintf_P (buffer, sizeof (buffer),
212
213
_ssdp_packet_template,
213
214
valueBuffer,
214
- SSDP_INTERVAL ,
215
+ _interval ,
215
216
_servername.c_str (),
216
217
_modelName, _modelNumber,
217
218
_uuid, _usn_suffix,
@@ -481,7 +482,7 @@ void SSDPClass::_update(){
481
482
}
482
483
DEBUG_SSDP.println (" ]" );
483
484
#endif
484
- if (_notify_time == 0 || (millis () - _notify_time) > (SSDP_INTERVAL * 1000L )){
485
+ if (_notify_time == 0 || (millis () - _notify_time) > (_interval * 1000L )){
485
486
_notify_time = millis ();
486
487
#ifdef DEBUG_SSDP
487
488
DEBUG_SSDP.println (" Send Notify" );
@@ -557,6 +558,10 @@ void SSDPClass::setTTL(const uint8_t ttl){
557
558
_ttl = ttl;
558
559
}
559
560
561
+ void SSDPClass::setInterval (uint8_t interval) {
562
+ _interval = interval;
563
+ }
564
+
560
565
void SSDPClass::_onTimerStatic (SSDPClass* self) {
561
566
#ifdef DEBUG_SSDP
562
567
DEBUG_SSDP.println (" Update" );
0 commit comments