I think a lot of peoples who are working with SIP knows and use sipsak. It's a Swiss-army knife for SIP, as it states. But not anymore. In a way migrating to OpenSSL 3.0 and newer distributions proper TLS transport support was lost. Or, in another words, I cannot make it work on Alma 9.
So, meet a replacement - sipexer from Kamailio author. Doing mainly the same (for me) and supports TLS and WebSocket out of the box. As a bonus for simple testing, you can get SIP reply code as a return code of the program itself.
So, instead of checks like
sipsak -s sip:check_server_health@localhost:5061 --transport=tls
if [ $? != 0 ]; then
restart_kamailio
fi
you can do
sipexer -timeout-write 500 -timeout 500 -vl 0 -mt options -ruser check_server_health tls:localhost:5061 >> /dev/null
if [ $? != 200 ]; then
restart_kamailio
fi
Quite a simple replacement and due to sipexer being written on Go, you can just get the binary and use it right away.
I like it when things become simpler.