hello Romain,

> >>> i'd expet that this adds a command "agent.flush" to my list of server 
> >>> commands.
> >>> but it adds something like src_1234.flush
> >>> is #{source.id(s) not the id "agent" i've specified in request.queue?
> >>> if i replace #{source.id(s)} with the id string, all is fine. but i 
> >>> wanted to
> >>> reuse the function for other request.queue too...
> >>> what's wrong? thanks for any tips,
> >>
> >> I think your problem is that the fact that final source IDs are
> >> attributed at run-time. It is very possible that at the time you
> >> register your server command, the source has a temporary ID that is
> >> changed when streaming starts. I would recommend trying something on
> >> these lines:
> >

yes, that makes sense, and it works. 
thanks!
udo


> # add a flush, i.e stop command
> def add_flush(id) =
>   #my request source
>   push = request.queue(id=id)
> 
>      def flush(_) =
>              ret = server.execute("#{source.id(push)}.queue")
>              ret = list.hd(ret)
>              ret = string.split(separator=" ", ret)
>              if list.length(ret) > 0 then
>                      list.iter(fun(x) -> begin
> ignore(server.execute("#{source.id(push)}.ignore #{x}")) end, ret)
>                      source.skip(push)
>              end
>              "done."
>      end
> 
>      server.register(namespace=id,
>              description="flush queue",
>              usage="flush",
>              "flush",
>              flush)
> 
>   push
> end
> 
> push = add_flush("agent")

------------------------------------------------------------------------------
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure
_______________________________________________
Savonet-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/savonet-users

Reply via email to