broadcast now checks whether port is open before trying to send
This commit is contained in:
parent
6680d7504b
commit
f10fb083cd
11
Hermes/TODO
11
Hermes/TODO
@ -1,15 +1,11 @@
|
|||||||
FEATURES
|
FEATURES
|
||||||
5. command(whisper, count, users), message parsable? parse in the client side should do something similar for settings (color, quit)
|
5. parser in the client side should do something similar (/color, /quit)
|
||||||
16. plain tcp -> ssl based
|
16. plain tcp -> ssl based
|
||||||
17. fix breaks for improper disconnects from clients
|
17. fix breaks for improper disconnects from clients
|
||||||
18. Add topics after project completion
|
18. Add topics after project completion
|
||||||
** regexes to parse strings for different formats -related to 5
|
** regexes to parse strings for different formats -related to 5
|
||||||
** put into a list if necessary for manipulation
|
|
||||||
** sync/timeout to plain sync
|
|
||||||
** align code better for readability
|
** align code better for readability
|
||||||
|
|
||||||
** adjust sleep time on all to be 0.1 for more responsiveness
|
|
||||||
** better function names
|
|
||||||
|
|
||||||
GOOD TO HAVE BUT NOT NECESSARY
|
GOOD TO HAVE BUT NOT NECESSARY
|
||||||
7. maybe fiddle around with irc library (we leave this for future opl classes) no time got other classes
|
7. maybe fiddle around with irc library (we leave this for future opl classes) no time got other classes
|
||||||
@ -18,7 +14,4 @@ GOOD TO HAVE BUT NOT NECESSARY
|
|||||||
additionally save user details and prompt user to use defaults or create
|
additionally save user details and prompt user to use defaults or create
|
||||||
new ones
|
new ones
|
||||||
10. authentication for databases - to avoid dependencies this is left out
|
10. authentication for databases - to avoid dependencies this is left out
|
||||||
11. user can ask for no of logged in users. - server already reports
|
** whispers aren't currently logged - its on purpose
|
||||||
even the list of users connected.
|
|
||||||
12. on connection server should also display list of users currently logged in
|
|
||||||
** whispers aren't currently logged
|
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
;; notes: output may need to be aligned and formatted nicely
|
;; notes: output may need to be aligned and formatted nicely
|
||||||
|
|
||||||
|
|
||||||
; i could prompt for these instead
|
; we will prompt for these in the gui
|
||||||
(define host "10.0.0.160") ; internal home
|
(define host "10.0.0.160")
|
||||||
(define host2 "67.186.191.81")
|
(define host2 "67.186.191.81")
|
||||||
(define host3 "localhost")
|
(define host3 "localhost")
|
||||||
(define port-num 4321)
|
(define port-num 4321)
|
||||||
@ -107,4 +107,4 @@
|
|||||||
(displayln-safe (string-append "Nothing received from server for 2 minutes.") convs-out-s convs-out)]))
|
(displayln-safe (string-append "Nothing received from server for 2 minutes.") convs-out-s convs-out)]))
|
||||||
|
|
||||||
(displayln-safe "Starting client." error-out-s error-out)
|
(displayln-safe "Starting client." error-out-s error-out)
|
||||||
(define stop (client 4321))
|
(define stop-client (client 4321))
|
||||||
|
@ -260,8 +260,11 @@
|
|||||||
(cond [(not (null? ((c-messages 'mes-list))))
|
(cond [(not (null? ((c-messages 'mes-list))))
|
||||||
(begin (map
|
(begin (map
|
||||||
(lambda (ports)
|
(lambda (ports)
|
||||||
|
(if (not (port-closed? (get-output-port ports)))
|
||||||
|
(begin
|
||||||
(displayln (first ((c-messages 'mes-list))) (get-output-port ports))
|
(displayln (first ((c-messages 'mes-list))) (get-output-port ports))
|
||||||
(flush-output (get-output-port ports)))
|
(flush-output (get-output-port ports)))
|
||||||
|
(displayln-safe "Failed to broadcast. Port not open." error-out-s error-out)))
|
||||||
((c-connections 'cons-list)))
|
((c-connections 'cons-list)))
|
||||||
(displayln-safe (first ((c-messages 'mes-list))) convs-out-s convs-out)
|
(displayln-safe (first ((c-messages 'mes-list))) convs-out-s convs-out)
|
||||||
;; remove top message
|
;; remove top message
|
||||||
@ -269,5 +272,5 @@
|
|||||||
(displayln "Message broadcasted"))])
|
(displayln "Message broadcasted"))])
|
||||||
(semaphore-post messages-s)))
|
(semaphore-post messages-s)))
|
||||||
|
|
||||||
(define stop (serve 4321)) ;; start server then close with stop
|
(define stop-server (serve 4321)) ;; start server then close with stop
|
||||||
(displayln-safe "Server process started\n" error-out-s error-out)
|
(displayln-safe "Server process started\n" error-out-s error-out)
|
||||||
|
Loading…
Reference in New Issue
Block a user