[asterisk-users] Device state of SIP doesn't change

Mark Michelson mmichelson at digium.com
Fri Jan 18 09:51:43 CST 2008


Atis Lezdins wrote:
> On 1/17/08, Mark Michelson <mmichelson at digium.com> wrote:
>> Atis Lezdins wrote:
>>> Hi,
>>>
>>> I'm wondering - why SIP device state doesn't get updated to anything
>>> else, except Not In Use.
>>>
>>> For queue call (with Local channel) i get:
>>> app_queue.c: Device 'SIP/21168' changed to state '1' (Not in use)
>>> app_queue.c: Device 'SIP/21168' changed to state '1' (Not in use)
>>> app_queue.c: The device state of this queue member, Agent/21168, is
>>> still 'Not in Use' when it probably should not be! Please check
>>> UPGRADE.txt for correct configuration settings.
>>>
>>> Of course, i checked UPGRADE.txt, and lot of other resources, enabled
>>> few settings in sip.conf, but this still doesn't change.
>>>
>>> my sip.conf is:
>>> [general]
>>> port = 5060
>>> bindaddr = 0.0.0.0
>>> context = default-external
>>> tos_sip=0x18
>>> tos_audio=0x18
>>> callerid = Unknown
>>> dtmfmode=rfc2833
>>> ignoreregexpire=yes
>>>
>>> limitonpeer=yes
>>> notifyringing=yes
>>> notifyhold=yes
>>> allowsubscribe=yes
>>> call-limit=1
>>>
>>> and the corresponding realtime entry is:
>>> name: 21168
>>> accountcode: NULL
>>> amaflags: NULL
>>> callgroup: NULL
>>> callerid: device <21168>
>>> canreinvite: no
>>> context: default-sip
>>> defaultip: NULL
>>> dtmfmode: rfc2833
>>> fromuser: NULL
>>> fromdomain: NULL
>>> fullcontact: NULL
>>> host: dynamic
>>> insecure: NULL
>>> language: NULL
>>> mailbox: 21168 at device
>>> md5secret: NULL
>>> nat: yes
>>> deny: NULL
>>> permit: NULL
>>> mask: NULL
>>> pickupgroup: NULL
>>> port: 5061
>>> qualify: no
>>> restrictcid: NULL
>>> rtptimeout: NULL
>>> rtpholdtimeout: NULL
>>> secret: xxx
>>> type: friend
>>> username: 21168
>>> disallow:
>>> allow: all
>>> musiconhold: NULL
>>> regseconds: 1200593168
>>> ipaddr: xxx.xxx.xxx.xxx
>>> regexten:
>>> cancallforward: yes
>>> setvar:
>>>
>>> Any help would be appreciated.
>>>
>>> Regards,
>>> Atis
>> The relevant portion of UPGRADE.txt mentions that a call-limit is necessary in
>> order for SIP devices to report proper device state. I see in your sip.conf file
>> that you have set call-limit in the general section. This setting, however, may
>> only be set per peer (or user). Unfortunately, there's no warning message output
>> if an unrecognized option is set in the general section.
> 
> Mark, thanks for pointing this out.
> 
> However, i was stuck without any success, until i tried adding my
> phone in static config - then it magically worked. So, i could use
> rtcachefriends=yes but that's something i would really like to avoid.
> Is this considered a bug? There's nothing in docs saying that state
> information is incompatible with Realtime.
> 
> Regards,
> Atis

After further discussion regarding this in #asterisk this morning, it would 
appear that communicating proper device state with realtime peers/users does not 
work properly. I would tentatively consider this a bug since I would expect that 
anything that works statically should also work in realtime as well. However, 
since I have not done a ton of work with chan_sip myself, there could be some 
subtle (or not so subtle) reason why this was purposely not implemented. Sorry I 
can't be more authoritative on this matter.

Mark Michelson



More information about the asterisk-users mailing list