Hello,

> -- Executing Dial("SIP/669-5894", "visdn/visdn0/0800800800") in new
> stack Oct 28 19:30:16 WARNING[5346]: channel.c:2183 ast_request: No
> translator path exists for channel type visdn (native 0) to 4 Oct 28
> 19:30:16 NOTICE[5346]: app_dial.c:1091 dial_exec_full: Unable to
> create channel of type 'visdn' (cause 0 - Unknown) == Everyone is
> busy/congested at this time (1:0/0/1) == Auto fallthrough, channel
> 'SIP/669-5894' status is 'CHANUNAVAIL'

I had the same problem. To fix this, I needed the following patch against
chan_visdn.c:

@@ -2155,6 +2155,7 @@
 static const struct ast_channel_tech visdn_tech = {
         .type = VISDN_CHAN_TYPE,
         .description = VISDN_DESCRIPTION,
+       .capabilities = AST_FORMAT_ALAW,
         .requester = visdn_request,
         .call = visdn_call,
         .hangup = visdn_hangup,

After this, asterisk didn't complain anymore about codecs, but just crashed.
gdb showed why (part of the original patch):

@@ -1409,13 +1409,12 @@
<snip>
+                char *name=NULL, *number=NULL;

-                strncpy(callerid, ast_chan->callerid, sizeof(callerid));
-                ast_callerid_parse(callerid, &name, &number);
+                strcpy(name, ast_chan->cid.cid_name);
+                strcpy(number, ast_chan->cid.cid_num);

i.e. first *name and *number are set to NULL, then data is copied...
After (just for fun) changing these to strdup's I got the ISDN PBX to
ring the phones, but I didn't get a valid connenction, the PBX gave
up after a few seconds, and so did I, as I wouldn't know where to look
for this problem.

Regards,
Jeroen

_______________________________________________
Visdn-hackers mailing list
[email protected]
https://mailman.uli.it/mailman/listinfo/visdn-hackers

Reply via email to