Use a (simple) microcontroller. You can add electronics or whatever component to receive the time it is even easy to add a WIFI/RF type to make it wireless or you can use SPI, I2C, serial/uart/USB etc when using a microcontroller).
Store the time in a variable, and control the buzzer directly via the microcontroller after a simple comparison of elapsed time and current time.
Probably receiving the time will be most hard to do without a microcontroller, assuming a (decent) protocol is needed.
(btw, it is possible to make a variable resistor, but it is a bit of a 'dirty solution' if not using a programmable resistor: use a LED, let it glow for some percentage. Attach a photo diode to it and put tape around the LED and photo diode. The amount of light of the LED will result in a difference resistance of the photo diode. I don't know if there is also some trick for capacitors).