aboutsummaryrefslogtreecommitdiffstats
path: root/lib/osc.moon
blob: a99aab0f1bc793d49c58074abe65504d0c5a0625 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import Op from require 'base'
import pack, unpack from require 'osc'
import dns, udp from require 'socket'

class out extends Op
  new: (...) =>
    super ...

    @@udp or= udp!

  setup: (@host, @port, @path, @value) =>

  update: =>
    ip = dns.toip @host\get!
    port = @port\get!
    msg = pack @path\get!, @value\get!
    @@udp\sendto msg, ip, port

{
  :out
}