{
struct skinny_req *req;
char *strptr;
- char *thestrings[12];
+ char *thestrings[13];
int i;
int callinfostrleft = MAXCALLINFOSTR;
thestrings[0] = fromnum;
thestrings[1] = ""; /* Appears to be origfrom */
- thestrings[2] = tonum;
+ if (calldirection == SKINNY_OUTGOING) {
+ thestrings[2] = tonum;
+ } else {
+ thestrings[2] = "";
+ }
thestrings[3] = "";
thestrings[4] = "";
thestrings[5] = "";
thestrings[9] = fromname;
thestrings[10] = toname;
thestrings[11] = "";
+ thestrings[12] = "";
strptr = req->data.callinfomessagevariable.calldetails;
- for(i = 0; i < 12; i++) {
+ for(i = 0; i < 13; i++) {
ast_copy_string(strptr, thestrings[i], callinfostrleft);
strptr += strlen(thestrings[i]) + 1;
callinfostrleft -= strlen(thestrings[i]) + 1;
} else if (sub->calldirection == SKINNY_OUTGOING) {
fromname = S_COR(ast_channel_caller(ast)->id.name.valid, ast_channel_caller(ast)->id.name.str, "");
fromnum = S_COR(ast_channel_caller(ast)->id.number.valid, ast_channel_caller(ast)->id.number.str, "");
- toname = S_COR(ast_channel_connected(ast)->id.name.valid, ast_channel_connected(ast)->id.name.str, l->lastnumberdialed);
+ toname = S_COR(ast_channel_connected(ast)->id.name.valid, ast_channel_connected(ast)->id.name.str, "");
tonum = S_COR(ast_channel_connected(ast)->id.number.valid, ast_channel_connected(ast)->id.number.str, l->lastnumberdialed);
} else {
ast_verb(1, "Error sending Callinfo to %s(%d) - No call direction in sub\n", d->name, l->instance);
} else if (sub->calldirection == SKINNY_OUTGOING) {
fromname = S_COR(ast_channel_caller(ast)->id.name.valid, ast_channel_caller(ast)->id.name.str, "");
fromnum = S_COR(ast_channel_caller(ast)->id.number.valid, ast_channel_caller(ast)->id.number.str, "");
- toname = S_COR(ast_channel_connected(ast)->id.name.valid, ast_channel_connected(ast)->id.name.str, l->lastnumberdialed);
+ toname = S_COR(ast_channel_connected(ast)->id.name.valid, ast_channel_connected(ast)->id.name.str, "");
tonum = S_COR(ast_channel_connected(ast)->id.number.valid, ast_channel_connected(ast)->id.number.str, l->lastnumberdialed);
} else {
ast_verb(1, "Error sending Callinfo to %s(%d) - No call direction in sub\n", d->name, l->instance);