[review] dcbw/huawei-voice

Aleksander Morgado aleksander at aleksander.es
Sat May 13 20:59:23 UTC 2017


Hey Dan & Riccardo,

Sorry for being so late reviewing this, it's been some crazy busy last weeks.

I've pushed several additional commits to the branch, please pull and
check them.

Dan, I was doing a standard review but it just was quicker for me to
fix the things I found. I've pushed several "fixup!" commits for the
fixes I found in your patches; you can just do a "git rebase -i
--autosquash master" to get them squashed properly after checking
them. Didn't want to recreate and repush your branch, will leave that
to you.

Regarding the modems that don't support CVOICE, I agree on the
ID_MM_VOICE_SUPPORTED udev tag. If there is no command to test support
and availability, let's use udev tags. Is any of you going to work on
preparing a patch for that?


>
> Now the larger change: call state handling in mm-base-call.c.  I
> removed most of the base class call state setting for the MO (mobile-
> originated, eg outgoing) call stuff.  I think the call state handling
> there was wrong; only the subclasses know when the call is ringing and
> has been picked up (answered) on the remote end through unsolicited
> notifications.  So the subclasses must be the ones to update the call
> state when they get these notifications, not the base call class.
> Huawei calls will now go through UNKNOWN -> DIALING -> RINGING_OUT ->
> ACCEPTED, where previously they went UNKNOWN -> RINGING_OUT -> ACTIVE
> and at the wrong times.
>

This is probably the change that made me more confused. Does this mean
that when the async start() method finishes the call may or may not be
accepted by the other end yet? So we issue start() and we later on get
the call status reported asynchronously, is that right?

Cheers!

-- 
Aleksander
https://aleksander.es


More information about the ModemManager-devel mailing list