[Freeswitch-dev] api getvar / setvar problem
Hi, I am pretty sure I am doing something wrong but here goes. I am using outbound event socket running on windows and everytime I send an api uuid_getvar or uuid_setvar the reply I get back is fragmented. I get the content type and the line that tells me the length, but then I get a blank line and nothing more coming down the socket. If I try to read another line after the blank line it blocks. eg. content-type: api/response content-length: ?? If I make another call, say just api i get the actual variable contents i expected from the first call followed by the next content header?? I can product a small demo if necessary, and that is my next step for diagnosing this, ie remove all the back ground stuff and focus on the problem, but I am hoping someone else has come across this and can point me in the right direction Cheers Bob
Are you writing your own client code? What language are you using? Have you seen the ESL library in tree that can be used as a client? If you are writing your own client: are you following the protocol properly? read lines only until you reach 2 newline in a row while collecting headers when you have read 2 newline if there was a content-type you must read that exact number of bytes no more or no less. When you send commands are you terminating them with 2 newlines? Have you disabled nagle's algorithm? If you lose your framing somewhere you will certainly mess up eventually. This is why I wrote the ESL lib for everyone to use. On Mon, Nov 9, 2009 at 9:19 PM, Bob Coleman <bobc@devassert.com> wrote:
Hi,
I am pretty sure I am doing something wrong but here goes.
I am using outbound event socket running on windows and everytime I send an api uuid_getvar or uuid_setvar the reply I get back is fragmented.
I get the content type and the line that tells me the length, but then I get a blank line and nothing more coming down the socket. If I try to read another line after the blank line it blocks.
eg. content-type: api/response content-length: ??
If I make another call, say just api i get the actual variable contents i expected from the first call followed by the next content header??
I can product a small demo if necessary, and that is my next step for diagnosing this, ie remove all the back ground stuff and focus on the problem, but I am hoping someone else has come across this and can point me in the right direction
Cheers
Bob
_______________________________________________ FreeSWITCH-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
-- Anthony Minessale II FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire AIM: anthm MSN:anthony_minessale@hotmail.com <MSN%3Aanthony_minessale@hotmail.com> GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com<PAYPAL%3Aanthony.minessale@gmail.com> IRC: irc.freenode.net #freeswitch FreeSWITCH Developer Conference sip:888@conference.freeswitch.org <sip%3A888@conference.freeswitch.org> iax:guest@conference.freeswitch.org/888 googletalk:conf+888@conference.freeswitch.org<googletalk%3Aconf%2B888@conference.freeswitch.org> pstn:213-799-1400
Yes, own client, c#, I have used some of the esl code to work out how to use event socket. Ah that explains it, I believe what I am doing wrong is after I have read the headers, I am expecting to just be able to read another line, but the last line is not terminated with a new line, and I must use the content length to read it. I have it working aside from dealing with the responses Thanks very much Bob On Wed, Nov 11, 2009 at 5:37 AM, Anthony Minessale <anthony.minessale@gmail.com> wrote:
Are you writing your own client code? What language are you using? Have you seen the ESL library in tree that can be used as a client?
If you are writing your own client: are you following the protocol properly? read lines only until you reach 2 newline in a row while collecting headers when you have read 2 newline if there was a content-type you must read that exact number of bytes no more or no less. When you send commands are you terminating them with 2 newlines? Have you disabled nagle's algorithm?
If you lose your framing somewhere you will certainly mess up eventually.
This is why I wrote the ESL lib for everyone to use.
On Mon, Nov 9, 2009 at 9:19 PM, Bob Coleman <bobc@devassert.com> wrote:
Hi,
I am pretty sure I am doing something wrong but here goes.
I am using outbound event socket running on windows and everytime I send an api uuid_getvar or uuid_setvar the reply I get back is fragmented.
I get the content type and the line that tells me the length, but then I get a blank line and nothing more coming down the socket. If I try to read another line after the blank line it blocks.
eg. content-type: api/response content-length: ??
If I make another call, say just api i get the actual variable contents i expected from the first call followed by the next content header??
I can product a small demo if necessary, and that is my next step for diagnosing this, ie remove all the back ground stuff and focus on the problem, but I am hoping someone else has come across this and can point me in the right direction
Cheers
Bob
_______________________________________________ FreeSWITCH-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
-- Anthony Minessale II
FreeSWITCH http://www.freeswitch.org/ ClueCon http://www.cluecon.com/ Twitter: http://twitter.com/FreeSWITCH_wire
AIM: anthm MSN:anthony_minessale@hotmail.com GTALK/JABBER/PAYPAL:anthony.minessale@gmail.com IRC: irc.freenode.net #freeswitch
FreeSWITCH Developer Conference sip:888@conference.freeswitch.org iax:guest@conference.freeswitch.org/888 googletalk:conf+888@conference.freeswitch.org pstn:213-799-1400
_______________________________________________ FreeSWITCH-dev mailing list FreeSWITCH-dev@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev http://www.freeswitch.org
participants (2)
-
Anthony Minessale
-
Bob Coleman