[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