[libnice] nice_agent_recv example
Radosław Kołodziejczyk
radek.kolodziejczyk at gmail.com
Tue Nov 4 06:42:28 PST 2014
Hi,
Is there any example code of the simplest use case with nice_agent_recv()?
Like your example-simple in tree?
I've seen your articlethat says that nice_agent_recv() should be the one
used in production, yet I can't find
any example of peer wotking with this.
Kind regards,
Radosław Kołodziejczyk.
2014-07-06 15:09 GMT+02:00 Philip Withnall <philip at tecnocode.co.uk>:
> Hi,
>
> As Youness says, you have a couple of options:
> • Call nice_agent_recv() or nice_agent_recv_messages() in a loop in a
> separate thread.
> • Use the NiceInputStream retrieved by nice_agent_get_io_stream(), and
> call g_pollable_input_stream_create_source(), then attach the GSource
> that returns to your GMainContext, just as nice_agent_attach_recv()
> does.
>
> This is because the NiceAgent needs to have started receiving packets
> before it can discover the reflexive candidates, as Youness says.
>
> Philip
>
> On Fri, 2014-07-04 at 04:21 -0400, Youness Alaoui wrote:
> > Hi,
> >
> >
> >
> > I'm not sure how it works as I hadn't implemented that part, but I'm
> > guessing you need to call nice_agent_recv in order for it to receive
> > the stun messages and discover the server reflexive and peer reflexive
> > candidaets. I think you need to create a separate thread that will
> > continuously call the function or something like that. Maybe have a
> > look at how the GIO implementation works, it could give you ideas.
> >
> >
> > I hope this helps,
> > Youness.
> >
> >
> >
> >
> > On Mon, Jun 30, 2014 at 8:17 AM, Sudesh Kumar <sudeshbks at gmail.com>
> > wrote:
> > I have tried using the nice_agent_recv function in my code,
> > but the problem is I have to use the peer reflexive candidate
> > as my selected component. As per the function definition
> >
> >
> > nice_agent_recv_messages must not be used in combination
> > with nice_agent_attach_recv() on the same stream/component
> > pair.
> >
> >
> >
> > but I can get the peer reflexive candidates only if I attaches
> > the stream's component's sockets to the Glib Mainloop Context
> > using nice_agent_attach_recv() before gathering the local
> > candidates.
> >
> >
> > Please help me in advance on how to use the nice_agent_recv()
> > function.
> >
> >
> > Thanks & Regards,
> > Sudesh
> >
> >
> > On Mon, Jun 23, 2014 at 7:12 PM, Sudesh Kumar
> > <sudeshbks at gmail.com> wrote:
> > Hi,
> >
> >
> > I am new to libnice and I am able to execute the
> > examples provided in the package. I can see the
> > nice_agent_attach_recv function is used to read the
> > data from connected peer in all the examples and this
> > is a callback function.
> >
> >
> > I want to use the nice_agent_recv function instead of
> > nice_agent_attach_recv, but I am unsure about how to
> > use it.
> >
> >
> > Can u please provide me a sample code(possibly editing
> > in simple-example.c) on how to use nice_agent_recv
> > function.
> >
> > Thanks & Regards,
> > Sudesh
> >
> >
> >
> > _______________________________________________
> > nice mailing list
> > nice at lists.freedesktop.org
> > http://lists.freedesktop.org/mailman/listinfo/nice
> >
> >
> >
> > _______________________________________________
> > nice mailing list
> > nice at lists.freedesktop.org
> > http://lists.freedesktop.org/mailman/listinfo/nice
>
>
> _______________________________________________
> nice mailing list
> nice at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/nice
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/nice/attachments/20141104/48f5bdfe/attachment.html>
More information about the nice
mailing list