- changed chat parameters to specify more than one controller

- fixed FACILITY_RESP SELECTOR value.
This commit is contained in:
MelwareDE 2007-05-13 11:30:34 +00:00
parent b5119c8c71
commit 4136d39be1
4 changed files with 16 additions and 11 deletions

5
README
View File

@ -280,9 +280,10 @@ Deactivate CCBS:
Chat (MeetMe/Conference):
If the CAPI card/driver supports it, the caller can be put into a chat-room:
exten => s,1,capicommand(chat|<roomname>|<controller>|<options>)
(This uses the DSPs onboard a Dialogic DIVA Server Rev.2 card.)
exten => s,1,capicommand(chat|<roomname>|<options>|controller)
Example:
exten => s,1,capicommand(chat|salesmeeting|1)
exten => s,1,capicommand(chat|salesmeeting||1,3-6)
Using CLIR

View File

@ -2815,7 +2815,7 @@ static void capidev_handle_facility_indication(_cmsg *CMSG, unsigned int PLCI, u
if (!resp_done) {
capi_sendf(NULL, 0, CAPI_FACILITY_RESP, PLCI, HEADER_MSGNUM(CMSG),
"w()",
FACILITYSELECTOR_SUPPLEMENTARY
FACILITY_IND_FACILITYSELECTOR(CMSG)
);
}
}

View File

@ -285,28 +285,32 @@ int pbx_capi_chat(struct ast_channel *c, char *param)
{
struct capi_pvt *i = NULL;
char *roomname, *controller, *options;
char *p;
struct capichat_s *room;
ast_group_t tmpcntr;
unsigned long contr = 0;
roomname = strsep(&param, "|");
controller = strsep(&param, "|");
options = param;
options = strsep(&param, "|");
controller = param;
if (!roomname) {
cc_log(LOG_WARNING, "capi chat requires room name.\n");
return -1;
}
cc_verbose(3, 1, VERBOSE_PREFIX_3 "capi chat: %s: roomname=%s "
"controller=%s options=%s\n",
c->name, roomname, controller, options);
if (controller) {
for (p = controller; p && *p; p++) {
if (*p == '|') *p = ',';
}
tmpcntr = ast_get_group(controller);
contr = (unsigned long)(tmpcntr >> 1);
}
cc_verbose(3, 1, VERBOSE_PREFIX_3 "capi chat: %s: roomname=%s "
"options=%s controller=%s (0x%x)\n",
c->name, roomname, options, controller, contr);
if (c->tech == &capi_tech) {
i = CC_CHANNEL_PVT(c);
} else {

View File

@ -112,8 +112,8 @@ void capi_remove_nullif(struct capi_pvt *i)
} else {
tmp->next = ii->next;
}
cc_verbose(3, 1, VERBOSE_PREFIX_4 "%s: removed null-interface.\n",
i->vname);
cc_verbose(3, 1, VERBOSE_PREFIX_4 "%s: removed null-interface from controller %d.\n",
i->vname, i->controller);
if (i->smoother)
ast_smoother_free(i->smoother);
cc_mutex_destroy(&i->lock);