[mythtv] MythPhone experiments and "features"
Steve Davies
steve at one47.co.uk
Wed Jan 26 15:31:27 EST 2005
Okay, I think I can shed more light on what is happening, and I think I
have workarounds for all except one item. I hope the following makes
some sense.
Steve Davies wrote:
>
> Paul Volkaerts wrote:
>
>>> * If SIP proxy registration fails, it is impossible to "ESC" out of
>>> MythPhone.
>>
[snip]
(This is the one I have no explanation or workaround for)
This is not just caused by SIP proxy registration failure, and does not
always happen. It seems that if any SIP request fails or is refused by
the proxy, there is a chance that the UI will start to ignore "ESC"... I
did notice that while in this state, that the ESC key starts to be
usable to hangup calls, much like "O".
I cannot reliably case this. Whenever I think I've pinned down what
exactly happened, the problem "times out" and goes back to normal... Let
me know if there is some debugging I can add to try and trap this.
It is _possible_ that it is down to the SUBSCRIBE configuration having
been absent as mentioned below...
>>> * I was unable to use asterisk's "host=dynamic" facility with MythPhone.
>>> Not sure why, but hard-coding the IP address works okay.
>>
This was fixed by enabling the SUBSCRIBE feature of Asterisk. by
creating a "subscribecontext" for the mythphone SIP user.
AFAICT "normal" SIP proxy negotiation is done using the SIP "REGISTER"
verb, but the MythPhone only seems able to use "SUBSCRIBE". The
SUBSCRIBE feature only works when explicitly configured as it is a
potential security risk (Strangers could monitor extension information
and numbers)
If possible the best fix here would be that if "SUBSCRIBE" is refused
with a 4xx code, then try to "REGISTER" instead - It will not show
extension statuses, but will establish a connection to the server. As
soon as I fixed this, lots of things started to work much better :)
NOTE: Even though the SUBSCRIBE was failing, the UI was displaying "No
active calls", rather than leaving the "Not Registered" message in
place. Perhaps "Not Registered" should take precedence?
>>> * Some of the calls I made were perfect. Mostly outbound calls from Myth
>>> worked very well. Sometimes there was no sound received from the remote
>>> end, even though asterisk reported sending it. For inbound calls to Myth
>>> I never seemed to get any inbound data (I didn't have time to do a net.
>>> trace, so not sure here)
>>
>>
>> With latest CVS, you can hit "i" and get mid-call stats like packet
>> counters
>> that are useful for debugging this kind of thing. Usually this is a NAT
>> issue but if you are only on your LAN I guess this is doubtful.
>
I pinned this one down too. It is cause by re"INVITE"s - Setting
"canreinvite=no" in the asterisk configuration for the Mythphone fixes
this problem by turing off this (possibly useful) feature.
re-Inviting allows the proxy to send INVITES to phones whenever it sees
fit to redirect the RTP stream. This (for example) allows 2 phones
speaking the same codec to be told to direct packets straight to
eachother rather than via the proxy. If (say) the call is transferred or
put on hold, another INVITE is sent to redirect the RTP stream once more.
MythPhone does not support this (It is not alone)
>>> * Hangup without exiting MythPhone.
>>
>> With CVS version you can hit "O" (STOP key)
Yes, this is working. Does it mute the speakers though? I seem to get
some background noise left behind.
IN SUMMARY:
===========
1) enable the SIP "subscribecontext" for mythphone in asterisk
2) set "canreinvite=no" for mythphone in asterisk
I bet all my other problems are gone now too ;-)
Thanks
Steve
--
Steve Davies steve at one47.co.uk
PGP Fingerprints:
DH/DSS : 5D85 8164 91D7 E9CC 4F80 842B AB86 93D9 8938 7612
RSA : 4E2E E60F 3D76 9E7E 70F9 901B 70FA 56C8
RSA4096: 02BE 5C0E EFA2 E1E4 EA89 C9CC 1E4F F654 3BC7 B65E
More information about the mythtv-dev
mailing list