File: sender.hs

package info (click to toggle)
haskell-network-multicast 0.3.2-5
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 84 kB
  • sloc: haskell: 32; makefile: 2
file content (18 lines) | stat: -rw-r--r-- 527 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import Network.Socket (withSocketsDo)
import Network.Socket.ByteString (sendTo)
import qualified Data.ByteString.Char8 as C
import Network.Multicast

import Data.Time.Clock (getCurrentTime)
import Control.Concurrent (threadDelay)

main :: IO ()
main = withSocketsDo $ do
    (sock, addr) <- multicastSender "224.0.0.99" 9999
    let loop = do
        msg <- fmap show getCurrentTime
        sendTo sock (C.pack msg) addr
        putStrLn $ "Send [" ++ show addr ++ "]: " ++ msg
        threadDelay 100000
        loop
    loop