Request for interface auto-connect for smart-sip-phone

Dear review team,

We uploaded our Smart-SIP-Phone Client to snapcraft this week. The Clients functionality is heavily hit without audio-record and network-connect beeing connected. Currently we advise the users to connect the interfaces themselves via the store page, but would like for them to auto-connect on install, since users might not read it and wonder why they cant call anybody.

  • name: smart-sip-phone
  • description: SIP client for every SIP telephone system
  • snapcraft:
  • upstream: PRIVATE
  • upstream-relation: we are the developers and maintainers of the client
  • interfaces:
    • audio-record:
      • request-type: auto-connection
      • reasoning: is needed to access the audio record devices, otherwise you wont be able to talk to the call partner
    • network-connect:
      • request-type: auto-connection
      • reasoning: is needed for the SIP stack we use (PJSIP), to initiate and stop calls. As well as for a planned licensing feature.

Kind regards, Max from EDNT.

We noticed that in order to detect all available audio devices we need the alsa plug connected too. I dont know if i should open a separate topic for it, but i will try to just apply for it here aswell.

  • alsa:
    • request-type: auto-connection
    • reasoning: Without it our SIP Stack only detects the default system Audio devices but we want the user to be able to set diffrent devices for Mic, Output, Speaker and Ringing.

Hey @ednt

As far as I know there is no network-connect interface in snapd. Could you please double check which network interface do you need?

Thanks

Oh yes you are right network-connect does not even exist i got it mixed up somehow.

The interface i meant is network-control.

Thanks for the clarification :slight_smile:

Could you also please provide a bit more info why other less privileged network interfaces, such as network-bind or network-observe are not enough?

The apparmor denials you observe with these interfaces would be great!

Thanks

Thanks for the suggestion on using network-bind and network-observe !

Both individually tackle one function we need, but we do not need network-observe yet.

The interface network-bind enables our SIP stack to make and end calls.

The interface network-observe lets us get the MAC-address of the default network adapter. We want to implement a licensing, where user can input a Product-Key for the Smart-SIP-Phone to unlock additional features. That key is then paired with the device that activated it. But we are currently still unsure how we want to implement this. Either via the same store entry and the user is able to give a product key in the settings tab to unlock additional features or with a separate store entry for Smart-SIP-Phone-Pro that only runs when a product key is given.

Since we are not sure how to tackle the licensing yet, we dont need network-observe right now.

Sounds great! Thanks for giving it a try.

Regarding alsa interface, I think it fits in the snap expected functionality. Thus, +1 from me

Great !

Is the audio-playback interface also considered with this ? We requested it too since it is also not auto connected.

Thanks

Hey @ednt

audio-playback interface auto-connect by default, i guess you mean audio-record hehe

Anyway, why is either audio-playback or audio-record needed if you are using alsa? From the documentation, alsa allows access to raw ALSA audio playback and recording devices

I’m sorry it took me so long to reply, but I was at home sick.

Thanks for your response @jslarraz !

Yes i actually meant the audio-record interface, got things mixed up again ^^ And you are correct, now with alsa i dont even need audio-record anymore! One Interface less again.

Seems like alsa is the only interface we need auto connected then, great !

Great, thanks for checking. We could proceed with the request as soon as we get other +1 from the @reviewers

Thanks

+1 from me as well for auto-connect alsa as it fits the purpose of the snap.

+2 votes for, 0 votes against, granting auto-connect of interface alsa to snap smart-sip-phone. This is now live