attempt to implement the passing of callerid. not tested
authorJeremy McNamara <jj@nufone.net>
Wed, 23 Jul 2003 02:00:28 +0000 (02:00 +0000)
committerJeremy McNamara <jj@nufone.net>
Wed, 23 Jul 2003 02:00:28 +0000 (02:00 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@1203 65c4cc65-6c06-0410-ace0-fbb531ad65f3

channels/h323/chan_h323.c
channels/h323/chan_h323.h

index 4bd97e4..99bfede 100755 (executable)
@@ -87,7 +87,7 @@ static char secret[50];
 /** Private structure of a OpenH323 channel */
 struct oh323_pvt {
        pthread_mutex_t lock;                                   /* Channel private lock */
-       call_options_t call_opt;                                /* Options to be used during call setup */
+       call_options_t calloptions;                             /* Options to be used during call setup */
        int     alreadygone;                                            /* Whether or not we've already been destroyed by or peer */
        int needdestroy;                                                /* if we need to be destroyed */
        call_details_t cd;                                              /* Call details */
@@ -402,7 +402,12 @@ static int oh323_call(struct ast_channel *c, char *dest, int timeout)
        memset(called_addr, 0, sizeof(dest));
        memcpy(called_addr, dest, sizeof(called_addr));
 
-       res = h323_make_call(called_addr, &(p->cd), p->call_opt);
+       /* Copy callerid, if there is any */
+       if (strlen(c->callerid)) {
+               p->calloptions.callerid = strdup(c->callerid);
+       }
+
+       res = h323_make_call(called_addr, &(p->cd), p->calloptions);
 
        if (res) {
                ast_log(LOG_NOTICE, "h323_make_call failed(%s)\n", c->name);
index 0e0bcdb..23e0b46 100755 (executable)
@@ -84,6 +84,7 @@ struct oh323_alias {
        PBX application and passed through make_call 
        function*/
 typedef struct call_options {
+       const char     *callerid;
        int                             noFastStart;
        int                             noH245Tunnelling;
        int                             noSilenceSuppression;
@@ -95,6 +96,7 @@ typedef struct call_options {
        asterisk channels to acutal h.323 connections */
 typedef struct call_details {  
        unsigned int call_reference;
+
        const char *call_token;                         
        const char *call_source_aliases;
        const char *call_dest_alias;