How to connect Risip in Qt
-
Hi!
Good afternoon. Found the Risip library - this, as I understand it, PJSIP collected for Qt. Please tell me how to connect Risip to the project? On the issue tracker, write "How to start using Radio in my project? Using Sip in your Qt / QML project is very easy and straightforward. Make sure you have Qt installed and running properly. Create your project with Qt Creator Inside your project folder, clone the ri sipvoipsdk repo. Edit the .profile of your project and add the following this line include(ri sipvoipsdk/ri sipvoipsdk.pri) on top."I created a project, named the folder with Risip rusip and placed it in the folder with the project. The project included r i sipvoipsdk.pri, but it didn't help. Here is my pro file:
include(risip/risip-voipsdk.pri) QT += core gui greaterThan(QT_MAJOR_VERSION, 4): QT += widgets TARGET = voipPjsipTest TEMPLATE = app # The following define makes your compiler emit warnings if you use # any feature of Qt which has been marked as deprecated (the exact warnings # depend on your compiler). Please consult the documentation of the # deprecated API in order to know how to port your code away from it. DEFINES += QT_DEPRECATED_WARNINGS # You can also make your code fail to compile if you use deprecated APIs. # In order to do so, uncomment the following line. # You can also select to disable deprecated APIs only up to a certain version of Qt. #DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0 CONFIG += c++11 SOURCES += \ main.cpp \ mainwindow.cpp HEADERS += \ mainwindow.h FORMS += \ mainwindow.ui # Default rules for deployment. qnx: target.path = /tmp/$${TARGET}/bin else: unix:!android: target.path = /opt/$${TARGET}/bin !isEmpty(target.path): INSTALLS += target
-
@Mikeeeeee said in How to connect Risip in Qt:
The project included r i sipvoipsdk.pri, but it didn't help.
Any warnings or error messages from qmake? Or during compilation?
-
Looks like their bug, then - get in touch with the author or try to fix yourself. Repo has no stable branch, no stable tags, so there is no safe commit to try out.
-
Hi,
Did you saw that there's a Qt app already available from the same folks ?
-
So the backend hasn't been implemented on Windows ?
-
Hi
well there seems not to have that missing file for windows anywayHowever, PJSIP itself (the backbone) have download for windows but the Risip (the Qt wrapper+)
seems to have very little under the platforms/win folder and generally the docs
do not mention Win platform at all. -
Tried on MacOS, too didn't work.
There is an archive class QTelephonyService .
Is there a working analogue? -
@Mikeeeeee
Hi
as far as i know, nothing replaced QTelephonyService .https://www.pjsip.org/ is available for windows but only builds with visual studio as
as a dynamic library (it seems) and must be from the visual studio IDE and not Creator. -
Here man already faced with this and decided to. I have a library in the project folder in the pjsip folder . Please tell me how to adapt this code.
TEMPLATE = app QT += qml quick QMAKE_CXXFLAGS += -std=c++11 -lstdc++ -m32 -O2 -fPIC -DPJ_IS_BIG_ENDIAN=0 -DPJ_IS_LITTLE_ENDIAN=1 CONFIG += c++11 -m32 SOURCES += main.cpp \ message.cpp RESOURCES += qml.qrc include(deployment.pri) HEADERS += \ message.h DEFINES -= UNICODE PKGCONFIG = LIBS += -L$$PWD/../../../pjproject-2.5/pj/pjproject-2.5/pjsip/lib/ \ -lpjsua2-i686-pc-mingw32 \ -lstdc++ \ -lpjsua-i686-pc-mingw32 \ -lpjsip-ua-i686-pc-mingw32 \ -lpjsip-simple-i686-pc-mingw32 \ -lpjsip-i686-pc-mingw32 \ -lpjmedia-codec-i686-pc-mingw32 \ -lpjmedia-i686-pc-mingw32 \ -lpjmedia-videodev-i686-pc-mingw32 \ -lpjmedia-audiodev-i686-pc-mingw32 \ -lpjmedia-i686-pc-mingw32 \ -lpjnath-i686-pc-mingw32 \ -lpjlib-util-i686-pc-mingw32 \ -lsrtp-i686-pc-mingw32 \ -lresample-i686-pc-mingw32 \ -lgsmcodec-i686-pc-mingw32 \ -lspeex-i686-pc-mingw32 \ -lilbccodec-i686-pc-mingw32 \ -lg7221codec-i686-pc-mingw32 \ -lpj-i686-pc-mingw32 \ -lm \ -lwinmm \ -lole32 \ -lws2_32 \ -lwsock32 INCLUDEPATH += $$PWD/../../../pjproject-2.5/pj/pjproject-2.5/pjsip/include \ $$PWD/../../../pjproject-2.5/pj/pjproject-2.5/pjlib/include \ $$PWD/../../../pjproject-2.5/pj/pjproject-2.5/pjlib-util/include \ $$PWD/../../../pjproject-2.5/pj/pjproject-2.5/pjmedia/include \ $$PWD/../../../pjproject-2.5/pj/pjproject-2.5/pjnath/include DEPENDPATH += $$PWD/../../../pjproject-2.5/pj/pjproject-2.5/pjsip/include
-
Hi
As minumum, you must make sure path is correct.
LIBS += -L$$PWD/../../../pjproject-2.5/pj/pjproject-2.5/pjsip/lib/
should be set to how you extract and build the library..He build it with mingw so that seems possible also, besides visual studio.
-
@Mikeeeeee
I dont know your structure so its hard to say.
You have to change this path to point to where you have all the files
from the build. ( like pjsip-ua-i686-pc etc )
LIBS += -L$$PWD/../../../pjproject-2.5/pj/pjproject-2.5/pjsip/lib/ -
Maybe you can tell how to run these VoIP projects?
https://github.com/dwatson78/Qt-Asterisk-Desktop
https://github.com/rudilee/AsteriskManager -
@Mikeeeeee
Those are clients so they should just run.
It is for the Asterisk IP PBX system/server so you need such installation to talk to.