Questions on gnomemeeting-opal's src/endpoint.cpp

classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

Questions on gnomemeeting-opal's src/endpoint.cpp

Julien PUYDT
Hi,

I tried reading src/endpoint.cpp to see how it now looks, and have
several questions/remarks:
1) the function GetRegisteredAccounts uses an ill-named int "sip" to
denote an integer which in fact adds h323 and sip accounts' numbers ; I
propose the following trivial patch to rename it to "number":
@@ -2554,13 +2554,13 @@
  int
  GMEndPoint::GetRegisteredAccounts ()
  {
-  int sip = 0;
+  int number = 0;

-  sip = sipEP->GetRegisteredAccounts ();
+  number = sipEP->GetRegisteredAccounts ();
    if (h323EP->IsRegisteredWithGatekeeper ())
-    sip++;
+    number++;

-  return sip;
+  return number;
  }


2) SetTransferCallToken and GetTransferCallToken don't use
PWaitAndSignal but explicitly do the Wait, something, then the Signal ;
why is it so?
3) I don't understand what all those "pc:" thingies are about (as seen
in AddRouteEntry or OpalManager::SetupCall function calls.

I wonder if my next step will be reading some more opal or some more
gnomemeeting-opal :-/

Snark
_______________________________________________
Gnomemeeting-devel-list mailing list
[hidden email]
http://mail.gnome.org/mailman/listinfo/gnomemeeting-devel-list
Reply | Threaded
Open this post in threaded view
|

Re: Questions on gnomemeeting-opal's src/endpoint.cpp

Damien Sandras
Hi,

Le dimanche 29 mai 2005 à 18:25 +0200, Julien PUYDT a écrit :

> Hi,
>
> I tried reading src/endpoint.cpp to see how it now looks, and have
> several questions/remarks:
> 1) the function GetRegisteredAccounts uses an ill-named int "sip" to
> denote an integer which in fact adds h323 and sip accounts' numbers ; I
> propose the following trivial patch to rename it to "number":
> @@ -2554,13 +2554,13 @@
>   int
>   GMEndPoint::GetRegisteredAccounts ()
>   {
> -  int sip = 0;
> +  int number = 0;
>
> -  sip = sipEP->GetRegisteredAccounts ();
> +  number = sipEP->GetRegisteredAccounts ();
>     if (h323EP->IsRegisteredWithGatekeeper ())
> -    sip++;
> +    number++;
>
> -  return sip;
> +  return number;
>   }
>

I'm in Germany, perhaps Migras can commit it? Or you?


>
> 2) SetTransferCallToken and GetTransferCallToken don't use
> PWaitAndSignal but explicitly do the Wait, something, then the Signal ;
> why is it so?

It comes from the old gnomemeeting, currently being transferred doesn't
work, so it is not used anymore. So that code needs to be reviewed once
I get "being transferred" working.


> 3) I don't understand what all those "pc:" thingies are about (as seen
> in AddRouteEntry or OpalManager::SetupCall function calls.
>
> I wonder if my next step will be reading some more opal or some more
> gnomemeeting-opal :-/
>

To summarize (Ive not had time to write my opal howto here as tehre is
no power and my battery is weak):
- An OpalManager manages several endpoints
- Each endpoint is able to do calls following a protocol
- In the future, if the protocols are different, there will be automatic
translation (for proxies and gateways) and automatic mixing, for now, it
is not the case

When you are doing a call, you create an OpalCall object. Each calls has
several OpalConnections involved, following the protocol. If you are
doing a SIP Call, you create an OpalCall object with 2 connections :
- 1 SIPConnection
- 1 PCSSConnection
The SIPConnection is managed by the SIPEndPoint
The PCSSConnection is managed by the PCSSEndPoint, which is not a real
protocol, with transcoding, but the PC Sound System endpoint.

In the future, for gateways, you will be able to remove the
PCSSConnection and replace it by an H.323 Connection for example.

Anyway, in GnomeMeeting's case, each call only contains 2 connections,
one to the LOCAL PCSSEndPoint (PCSSConnection) and one to the REMOTE
SIPEndPoint (SIPConnection).

When you are being transferred, you keep the PCSSConnection in the call,
and remove the SIPConnection to replace it by another one to another
endpoint.

Those are the basics.

An OpalMediaStream is the connection between a source and a sink.
Obviously you will for example have : PCM-16 -> G.711 codec (encoding)
and G.711 -> PCM-16 (decoding). Because an OpalMediaStream related to a
PCSSConnection is of type PCM-16, for example.




> Snark
> _______________________________________________
> Gnomemeeting-devel-list mailing list
> [hidden email]
> http://mail.gnome.org/mailman/listinfo/gnomemeeting-devel-list
--
 _      Damien Sandras
(o-     GnomeMeeting: http://www.gnomemeeting.org/
//\     FOSDEM 2005 : http://www.fosdem.org
v_/_    H.323 phone : callto:ils.seconix.com/[hidden email]

_______________________________________________
Gnomemeeting-devel-list mailing list
[hidden email]
http://mail.gnome.org/mailman/listinfo/gnomemeeting-devel-list
Reply | Threaded
Open this post in threaded view
|

Re: Questions on gnomemeeting-opal's src/endpoint.cpp

Julien PUYDT
Damien Sandras a écrit :

>>1) the function GetRegisteredAccounts uses an ill-named int "sip" to
>>denote an integer which in fact adds h323 and sip accounts' numbers ; I
>>propose the following trivial patch to rename it to "number":
>>@@ -2554,13 +2554,13 @@
>>  int
>>  GMEndPoint::GetRegisteredAccounts ()
>>  {
>>-  int sip = 0;
>>+  int number = 0;
>>
>>-  sip = sipEP->GetRegisteredAccounts ();
>>+  number = sipEP->GetRegisteredAccounts ();
>>    if (h323EP->IsRegisteredWithGatekeeper ())
>>-    sip++;
>>+    number++;
>>
>>-  return sip;
>>+  return number;
>>  }

> I'm in Germany, perhaps Migras can commit it? Or you?

Well, I waited and waited, but Migras didn't commit it, so I finally did
it... I really don't like cvs.

>>2) SetTransferCallToken and GetTransferCallToken don't use
>>PWaitAndSignal but explicitly do the Wait, something, then the Signal ;
>>why is it so?
>
> It comes from the old gnomemeeting, currently being transferred doesn't
> work, so it is not used anymore. So that code needs to be reviewed once
> I get "being transferred" working.

Ok.

>>3) I don't understand what all those "pc:" thingies are about (as seen
>>in AddRouteEntry or OpalManager::SetupCall function calls.
> To summarize (Ive not had time to write my opal howto here as tehre is
> no power and my battery is weak):
> - An OpalManager manages several endpoints

Ok.

> - Each endpoint is able to do calls following a protocol

Say SIP or H323. Ok. Explains why there are src/sipendpoint.cpp and
src/h323endpoint.cpp.

> - In the future, if the protocols are different, there will be automatic
> translation (for proxies and gateways) and automatic mixing, for now, it
> is not the case

I'm not sure I'm even supposed to understand that sentence ;-)

> When you are doing a call, you create an OpalCall object.

More precisely: the endpoint creates an OpalCall object?

> Each calls has
> several OpalConnections involved,

I don't get what an OpalConnection is from the rest of your
explanations: are they some sort of members of a room and share all
media in/out.

> following the protocol. If you are
> doing a SIP Call, you create an OpalCall object with 2 connections :
> - 1 SIPConnection
> - 1 PCSSConnection
> The SIPConnection is managed by the SIPEndPoint
> The PCSSConnection is managed by the PCSSEndPoint, which is not a real
> protocol, with transcoding, but the PC Sound System endpoint.

This is what makes me think those OpalConnections are some sort of
members of a room. One of the occupants is the user and the other is the
network. Right?

> In the future, for gateways, you will be able to remove the
> PCSSConnection and replace it by an H.323 Connection for example.

This adds in the fact that they are some sort of room member.

> Anyway, in GnomeMeeting's case, each call only contains 2 connections,
> one to the LOCAL PCSSEndPoint (PCSSConnection) and one to the REMOTE
> SIPEndPoint (SIPConnection).

Once you confirm my notion of room member, I guess I'll be more than ok
with it.

> When you are being transferred, you keep the PCSSConnection in the call,
> and remove the SIPConnection to replace it by another one to another
> endpoint.

Idem.

> Those are the basics.

Hope I understood well enough. Would it be possible to put more than two
connections in a call (multiconference) [of course if the network is
able to cope with it]?

> An OpalMediaStream is the connection between a source and a sink.
> Obviously you will for example have : PCM-16 -> G.711 codec (encoding)
> and G.711 -> PCM-16 (decoding). Because an OpalMediaStream related to a
> PCSSConnection is of type PCM-16, for example.

Is an OpalConnection a collection of OpalMediaStreams (one for sound
input, another for sound output ; in some time another for video input
and a fourth for video output...)?

Snark
_______________________________________________
Gnomemeeting-devel-list mailing list
[hidden email]
http://mail.gnome.org/mailman/listinfo/gnomemeeting-devel-list
Reply | Threaded
Open this post in threaded view
|

Re: Questions on gnomemeeting-opal's src/endpoint.cpp

Damien Sandras
Le mercredi 01 juin 2005 à 22:15 +0200, Julien PUYDT a écrit :

> Damien Sandras a écrit :
> >>1) the function GetRegisteredAccounts uses an ill-named int "sip" to
> >>denote an integer which in fact adds h323 and sip accounts' numbers ; I
> >>propose the following trivial patch to rename it to "number":
> >>@@ -2554,13 +2554,13 @@
> >>  int
> >>  GMEndPoint::GetRegisteredAccounts ()
> >>  {
> >>-  int sip = 0;
> >>+  int number = 0;
> >>
> >>-  sip = sipEP->GetRegisteredAccounts ();
> >>+  number = sipEP->GetRegisteredAccounts ();
> >>    if (h323EP->IsRegisteredWithGatekeeper ())
> >>-    sip++;
> >>+    number++;
> >>
> >>-  return sip;
> >>+  return number;
> >>  }
>
> > I'm in Germany, perhaps Migras can commit it? Or you?
>
> Well, I waited and waited, but Migras didn't commit it, so I finally did
> it... I really don't like cvs.
>
> >>2) SetTransferCallToken and GetTransferCallToken don't use
> >>PWaitAndSignal but explicitly do the Wait, something, then the Signal ;
> >>why is it so?
> >
> > It comes from the old gnomemeeting, currently being transferred doesn't
> > work, so it is not used anymore. So that code needs to be reviewed once
> > I get "being transferred" working.
>
> Ok.
>
> >>3) I don't understand what all those "pc:" thingies are about (as seen
> >>in AddRouteEntry or OpalManager::SetupCall function calls.
> > To summarize (Ive not had time to write my opal howto here as tehre is
> > no power and my battery is weak):
> > - An OpalManager manages several endpoints
>
> Ok.
>
> > - Each endpoint is able to do calls following a protocol
>
> Say SIP or H323. Ok. Explains why there are src/sipendpoint.cpp and
> src/h323endpoint.cpp.
>
> > - In the future, if the protocols are different, there will be automatic
> > translation (for proxies and gateways) and automatic mixing, for now, it
> > is not the case
>
> I'm not sure I'm even supposed to understand that sentence ;-)

Same here ;)

>
> > When you are doing a call, you create an OpalCall object.
>
> More precisely: the endpoint creates an OpalCall object?


The OpalManager I think.



>
> > Each calls has
> > several OpalConnections involved,
>
> I don't get what an OpalConnection is from the rest of your
> explanations: are they some sort of members of a room and share all
> media in/out.

Yes sort of. They imply OpalMediaStreams, managed by a Patch and a
Sink/Source.

>
> > following the protocol. If you are
> > doing a SIP Call, you create an OpalCall object with 2 connections :
> > - 1 SIPConnection
> > - 1 PCSSConnection
> > The SIPConnection is managed by the SIPEndPoint
> > The PCSSConnection is managed by the PCSSEndPoint, which is not a real
> > protocol, with transcoding, but the PC Sound System endpoint.
>
> This is what makes me think those OpalConnections are some sort of
> members of a room. One of the occupants is the user and the other is the
> network. Right?

Right. But for a gateway, you could have a SIP and H.323 connection, and
no "user" connection.

>
> > In the future, for gateways, you will be able to remove the
> > PCSSConnection and replace it by an H.323 Connection for example.
>
> This adds in the fact that they are some sort of room member.
>
> > Anyway, in GnomeMeeting's case, each call only contains 2 connections,
> > one to the LOCAL PCSSEndPoint (PCSSConnection) and one to the REMOTE
> > SIPEndPoint (SIPConnection).
>
> Once you confirm my notion of room member, I guess I'll be more than ok
> with it.

Yes, your metaphore is correct.

>
> > When you are being transferred, you keep the PCSSConnection in the call,
> > and remove the SIPConnection to replace it by another one to another
> > endpoint.
>
> Idem.
>
> > Those are the basics.
>
> Hope I understood well enough. Would it be possible to put more than two
> connections in a call (multiconference) [of course if the network is
> able to cope with it]?

Yes, ie my "auto-mixing" sentence you didn't understand here above.

>
> > An OpalMediaStream is the connection between a source and a sink.
> > Obviously you will for example have : PCM-16 -> G.711 codec (encoding)
> > and G.711 -> PCM-16 (decoding). Because an OpalMediaStream related to a
> > PCSSConnection is of type PCM-16, for example.
>
> Is an OpalConnection a collection of OpalMediaStreams (one for sound
> input, another for sound output ; in some time another for video input
> and a fourth for video output...)?
>

Yes, there is an OpalMediaStream from G.711 to PCM-16 and another in the
reverse direction. Sometimes, there can be direct media bypass (SIP to
SIP without codec conversion in the case of a gateway where an OPALCall
object contains 2 SIP connections).
--
 _      Damien Sandras
(o-     GnomeMeeting: http://www.gnomemeeting.org/
//\     FOSDEM 2005 : http://www.fosdem.org
v_/_    H.323 phone : callto:ils.seconix.com/[hidden email]

_______________________________________________
Gnomemeeting-devel-list mailing list
[hidden email]
http://mail.gnome.org/mailman/listinfo/gnomemeeting-devel-list
Reply | Threaded
Open this post in threaded view
|

Re: Questions on gnomemeeting-opal's src/endpoint.cpp

Damien Sandras
In reply to this post by Julien PUYDT
Le mercredi 01 juin 2005 à 22:15 +0200, Julien PUYDT a écrit :

> Damien Sandras a écrit :
> >>1) the function GetRegisteredAccounts uses an ill-named int "sip" to
> >>denote an integer which in fact adds h323 and sip accounts' numbers ; I
> >>propose the following trivial patch to rename it to "number":
> >>@@ -2554,13 +2554,13 @@
> >>  int
> >>  GMEndPoint::GetRegisteredAccounts ()
> >>  {
> >>-  int sip = 0;
> >>+  int number = 0;
> >>
> >>-  sip = sipEP->GetRegisteredAccounts ();
> >>+  number = sipEP->GetRegisteredAccounts ();
> >>    if (h323EP->IsRegisteredWithGatekeeper ())
> >>-    sip++;
> >>+    number++;
> >>
> >>-  return sip;
> >>+  return number;
> >>  }
>
> > I'm in Germany, perhaps Migras can commit it? Or you?
>
> Well, I waited and waited, but Migras didn't commit it, so I finally did
> it... I really don't like cvs.

Actually, it is even nice that you did it.

I need help for :
- CVS commits
- bugs triaging

--
 _      Damien Sandras
(o-     GnomeMeeting: http://www.gnomemeeting.org/
//\     FOSDEM 2005 : http://www.fosdem.org
v_/_    H.323 phone : callto:ils.seconix.com/[hidden email]

_______________________________________________
Gnomemeeting-devel-list mailing list
[hidden email]
http://mail.gnome.org/mailman/listinfo/gnomemeeting-devel-list
Reply | Threaded
Open this post in threaded view
|

Re: Questions on gnomemeeting-opal's src/endpoint.cpp

Kilian Krause
Hi Damien,

> I need help for :
> - CVS commits

if that's plain making patches fit and commiting, just throw them at
me ;)

--
Best regards,
 Kilian

_______________________________________________
Gnomemeeting-devel-list mailing list
[hidden email]
http://mail.gnome.org/mailman/listinfo/gnomemeeting-devel-list

signature.asc (196 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Questions on gnomemeeting-opal's src/endpoint.cpp

Damien Sandras
Le jeudi 02 juin 2005 à 19:57 +0200, Kilian Krause a écrit :
> Hi Damien,
>
> > I need help for :
> > - CVS commits
>
> if that's plain making patches fit and commiting, just throw them at
> me ;)
>

Actually, yes! ;)
--
 _      Damien Sandras
(o-     GnomeMeeting: http://www.gnomemeeting.org/
//\     FOSDEM 2005 : http://www.fosdem.org
v_/_    H.323 phone : callto:ils.seconix.com/[hidden email]

_______________________________________________
Gnomemeeting-devel-list mailing list
[hidden email]
http://mail.gnome.org/mailman/listinfo/gnomemeeting-devel-list