(define* (antsy-caller-pester-rep actor message #:key who-to-call)
(~display "customer> I'm calling customer service about this!\n")
(define* (antsy-caller-pester-rep actor message #:key who-to-call)
(~display "customer> I'm calling customer service about this!\n")
(<-wait actor who-to-call 'field-call)
(if (message-auto-reply? first-reply)
(~display "customer> Whaaaaat? I can't believe I got voice mail!\n")
(begin
(~format "*customer hears*: ~a\n" msg)
(<-wait actor who-to-call 'field-call)
(if (message-auto-reply? first-reply)
(~display "customer> Whaaaaat? I can't believe I got voice mail!\n")
(begin
(~format "*customer hears*: ~a\n" msg)
(<-reply-wait actor first-reply
#:msg "Yes, it didn't work, I'm VERY ANGRY!")
(if (message-auto-reply? second-reply)
(<-reply-wait actor first-reply
#:msg "Yes, it didn't work, I'm VERY ANGRY!")
(if (message-auto-reply? second-reply)
(define (rep-field-call actor message)
(~display "good-rep> Hm, another call from a customer...\n")
(define (rep-field-call actor message)
(~display "good-rep> Hm, another call from a customer...\n")
(list (bootstrap-message hive customer 'pester-rep
#:who-to-call diligent-rep))))
(displayed-text (get-output-string (%record-out))))
(list (bootstrap-message hive customer 'pester-rep
#:who-to-call diligent-rep))))
(displayed-text (get-output-string (%record-out))))
good-rep> Hm, another call from a customer...
*customer hears*: Have you tried turning it off and on?
*rep hears*: Yes, it didn't work, I'm VERY ANGRY!
good-rep> I'm sorry, that's all I can do for you.
good-rep> Hm, another call from a customer...
*customer hears*: Have you tried turning it off and on?
*rep hears*: Yes, it didn't work, I'm VERY ANGRY!
good-rep> I'm sorry, that's all I can do for you.
;; * Playing a tape of a lazy service rep *
(parameterize ((%record-out (open-output-string)))
(let* ((result (ez-run-hive
;; * Playing a tape of a lazy service rep *
(parameterize ((%record-out (open-output-string)))
(let* ((result (ez-run-hive
(list (bootstrap-message hive customer 'pester-rep
#:who-to-call lazy-rep))))
(displayed-text (get-output-string (%record-out))))
(list (bootstrap-message hive customer 'pester-rep
#:who-to-call lazy-rep))))
(displayed-text (get-output-string (%record-out))))