@@ -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
// send notify with our root device type
487
488
strlcpy (_respondType, " upnp:rootdevice" , sizeof (_respondType));
@@ -560,6 +561,10 @@ void SSDPClass::setTTL(const uint8_t ttl){
560
561
_ttl = ttl;
561
562
}
562
563
564
+ void SSDPClass::setInterval (uint8_t interval) {
565
+ _interval = interval;
566
+ }
567
+
563
568
void SSDPClass::_onTimerStatic (SSDPClass* self) {
564
569
#ifdef DEBUG_SSDP
565
570
DEBUG_SSDP.println (" Update" );
0 commit comments