[asterisk-users] MeetMe Hints

Paul Dugas paul at dugasenterprises.com
Mon Sep 28 10:08:59 CDT 2009


I suspect the issue I'm having is more specific to the MeetMe app but
that's just a guess.  app_meetme.c (in 1.6.1.6) calls

  ast_devstate_changed(AST_DEVICE_INUSE, "meetme:%s", conf->confno)

when the first caller enters a conference and

  ast_devstate_changed(AST_DEVICE_NOT_INUSE, "meetme:%s", conf->confno)

when the last caller leaves.  Running "core show hints" shows the
meetme:600 as Status:Unavailable most of the time after a conference
ends.  Occasionally, it'll show Status:Idle.  I guess I'm wondering
where the hint could be getting changed to Unavailable since it
doesn't look like the MeetMe app ever sets them this way.

I wonder if it's a result of my using an extension pattern.  AFAIK,
the 600 at dialtone hint is created from the _60X at dialtone pattern when
the first station subscribes.  I wonder if these polycom stations are
unsubscribing or timing out thus removing the pattern-generated hint.
I'll try a statically configured hint to see if that's the issue.

I also wonder if there's any logic elsewhere that would ever set the
initial hint status for a meetme.  With a brief look at app_meetme.c,
I don't see where it updates the device state except on join/leave.

P

On Mon, Sep 28, 2009 at 9:24 AM, Danny Nicholas <danny at debsinc.com> wrote:
> The routine ast_extension_states in main/pbx.c is set up (in 1.4.26.1) to
> return these values:
>
>       switch (devstate) {
>        case AST_DEVICE_ONHOLD:
>                return AST_EXTENSION_ONHOLD;
>        case AST_DEVICE_BUSY:
>                return AST_EXTENSION_BUSY;
>        case AST_DEVICE_UNAVAILABLE:
>        case AST_DEVICE_UNKNOWN:
>        case AST_DEVICE_INVALID:
>                return AST_EXTENSION_UNAVAILABLE;
>        case AST_DEVICE_RINGINUSE:
>                return (AST_EXTENSION_INUSE | AST_EXTENSION_RINGING);
>        case AST_DEVICE_RINGING:
>                return AST_EXTENSION_RINGING;
>        case AST_DEVICE_INUSE:
>                return AST_EXTENSION_INUSE;
>        case AST_DEVICE_NOT_INUSE:
>                return AST_EXTENSION_NOT_INUSE;
>        case AST_DEVICE_TOTAL: /* not a device state, included for
> completeness */
>                break;
>
> These come back "in English" as
> static const struct cfextension_states {
>        int extension_state;
>        const char * const text;
> } extension_states[] = {
>        { AST_EXTENSION_NOT_INUSE,                     "Idle" },
>        { AST_EXTENSION_INUSE,                         "InUse" },
>        { AST_EXTENSION_BUSY,                          "Busy" },
>        { AST_EXTENSION_UNAVAILABLE,                   "Unavailable" },
>        { AST_EXTENSION_RINGING,                       "Ringing" },
>        { AST_EXTENSION_INUSE | AST_EXTENSION_RINGING, "InUse&Ringing" },
>        { AST_EXTENSION_ONHOLD,                        "Hold" },
>        { AST_EXTENSION_INUSE | AST_EXTENSION_ONHOLD,  "InUse&Hold" }
>
> So a line Is Unavailable on 3 conditions, but only Idle on one; unless you
> tweak to make UNAVAILABLE equivalent to NOT_INUSE.  I don't know the
> ramifications if any of the tweak.
>
>
> -----Original Message-----
> From: asterisk-users-bounces at lists.digium.com
> [mailto:asterisk-users-bounces at lists.digium.com] On Behalf Of Paul Dugas
> Sent: Sunday, September 27, 2009 5:31 PM
> To: Asterisk Users Mailing List
> Subject: [asterisk-users] MeetMe Hints
>
> I've got hints setup for my MeetMe conferences like so:
>
>    exten => _60X,hint,MeetMe:${EXTEN}
>
> and they show up in "core show hints" like so
>
>    600 at dialtone            : MeetMe:600            State:Unavailable
>   Watchers  1
>    _60X at dialtone            : MeetMe:${EXTEN}       State:Unavailable
>    Watchers  0
>
> I'm wondering why they're Unavailable instead of Idle.  They go to
> "State:InUse" when active but usually return to Unavailable when the
> conference ends.  Occasionally they end up in InUse but not
> consistently.
>
> Anybody know why?
>
> Paul
> --
> Paul Dugas -- Computer Engineer -- Dugas Enterprises, LLC
> 522 Black Canyon Park, Canton GA 30114 USA
> paul at dugasenterprises.com -- +1.404.932.1355
>
> _______________________________________________
> -- Bandwidth and Colocation Provided by http://www.api-digital.com --
>
> AstriCon 2009 - October 13 - 15 Phoenix, Arizona
> Register Now: http://www.astricon.net
>
> asterisk-users mailing list
> To UNSUBSCRIBE or update options visit:
>   http://lists.digium.com/mailman/listinfo/asterisk-users
>
>
> _______________________________________________
> -- Bandwidth and Colocation Provided by http://www.api-digital.com --
>
> AstriCon 2009 - October 13 - 15 Phoenix, Arizona
> Register Now: http://www.astricon.net
>
> asterisk-users mailing list
> To UNSUBSCRIBE or update options visit:
>   http://lists.digium.com/mailman/listinfo/asterisk-users
>



-- 
Paul Dugas -- Computer Engineer -- Dugas Enterprises, LLC
522 Black Canyon Park, Canton GA 30114 USA
paul at dugasenterprises.com -- +1.404.932.1355



More information about the asterisk-users mailing list