Hi all,
While working with open5gs + kamailio, one traditionally always needed two HSS:
* the open5gs one with its mongodb and nodejs hell
* the FHoSS one for the kamailio IMS core
For some time there's now PyHSS, which supports both EPS and IMS subscriptions, which
is of course nice. docker_open5gs meanwhile also has switched to using it as default.
The big problem is that it doesn't actually state which license it is
under, which makes it legally impossible to [re]distribute it, or to even make a fork
of the repository, as that would be a violation of copyright. At least German users
are abel to legally use it, as under German copyright law you don't need
a license from the copyright holder to use a program that you have obtained legally.
In order to automatize the steps described in the open5gs_docker to create
subscribers, I've just hacked up a small tool, see
https://gitea.osmocom.org/laforge/pyhss-tool/src/branch/master/pyhss-tool.py
Using that tool, it's as easy as
pyhss-tool.py subscriber-create --imsi 001011111111111 --msisdn 1111 --k
000102030405060708090a0b0c0d0e0f --opc 00000000000000000000000000000000
or
pyhss-tool.py subscriber-delete --imsi 001011111111111
to add/remove subscribers. You will still need to manually create the
internet and ims APNs via the REST interface; I'll probably also add
that capability to the tool.
Once it's a bit more tested, I also would like to contribute it
upstream, at least once that is possible. To do that I'd have to make a
pull request, and making that pull request requires me to create a fork,
which is a copyright violation. wtf.
If that legal situation has cleared up, it might be worth considering either adding
native GSUP support to PyHSS (so it can be used by osmo-{msc,sgsn}, or to have
a converter like osmo_gsup2dia (the inverse of the existing osmo_dia2gsup).
Regards,
Harald
--
- Harald Welte <laforge(a)osmocom.org>
https://laforge.gnumonks.org/
============================================================================
"Privacy in residential applications is a desirable marketing option."
(ETSI EN 300 175-7 Ch. A6)