aboutsummaryrefslogtreecommitdiffstats
path: root/channels
diff options
context:
space:
mode:
authorphsultan <phsultan@f38db490-d61c-443f-a65b-d21fe96a405b>2008-05-23 10:33:21 +0000
committerphsultan <phsultan@f38db490-d61c-443f-a65b-d21fe96a405b>2008-05-23 10:33:21 +0000
commit5f862e68539e37847ba3ffcb413d8a21962f4361 (patch)
tree71c813cf302cb851d726908b1b7505918d5076b5 /channels
parent42112d02ed28b3133719a8f2b34d1cd89e3cdb5c (diff)
- remove whitespaces between tags in received XML packets before giving
them to the parser ; - report Gtalk error messages from a buddy to the console. This patch makes Asterisk "Google Jingle" (chan_gtalk) implementation work with Empathy. Note that this is only true for audio streams, not video. Thank you to PH for his great help! (closes issue #12647) Reported by: PH Patches: trunk-12647-1.diff uploaded by phsultan (license 73) Tested by: phsultan, PH git-svn-id: http://svn.digium.com/svn/asterisk/trunk@118020 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels')
-rw-r--r--channels/chan_gtalk.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/channels/chan_gtalk.c b/channels/chan_gtalk.c
index 4e5e5a36f..90b2cde24 100644
--- a/channels/chan_gtalk.c
+++ b/channels/chan_gtalk.c
@@ -1702,7 +1702,10 @@ static int gtalk_parser(void *data, ikspak *pak)
{
struct gtalk *client = ASTOBJ_REF((struct gtalk *) data);
- if (iks_find_with_attrib(pak->x, "session", "type", "initiate")) {
+ if (iks_find_attrib(pak->x, "type") && !strcmp(iks_find_attrib (pak->x, "type"),"error")) {
+ ast_log(LOG_NOTICE, "Remote peer reported an error, trying to establish the call anyway\n");
+ }
+ else if (iks_find_with_attrib(pak->x, "session", "type", "initiate")) {
/* New call */
gtalk_newcall(client, pak);
} else if (iks_find_with_attrib(pak->x, "session", "type", "candidates") || iks_find_with_attrib(pak->x, "session", "type", "transport-info")) {