Evangelos Ribeiro Tzaras
c2bd6e9344
sip: media: rework codec negotiation
...
introduce `calls_sip_media_manager_get_capabilities ()` which takes
a GList of MediaCodecInfo's as input to generate a SDP message.
If using in an SDP answer we simply feed it a list of the common codecs
as gathered from the SDP offer.
2021-04-12 08:38:24 +00:00
Evangelos Ribeiro Tzaras
4eb07148cc
sip: call: rename setup local/remote connection functions
...
Avoid ambiguity by renaming the functions. `setup_local_media ()`
could give the impression that we're setting up media codecs which
is not the case.
2021-04-12 08:38:24 +00:00
Evangelos Ribeiro Tzaras
157dc1fffb
sip: media: use number types for payload id and clock rate
...
This is needed for the next commits where we check the received SDP
offers/answers.
2021-04-12 08:38:24 +00:00
Evangelos Ribeiro Tzaras
7d113d4180
media: manager: support multiple codecs SDP wise
...
static capabilities are now supporting multiple codecs and generate correct SDP
messages. This only relates to SDP offers. When we are answering an offer we
must take the offer from the other party into account when creating the answer.
Hence why we differentiate between "static" and "dynamic" (not implemented yet)
capability strings.
2021-04-12 08:38:24 +00:00
Evangelos Ribeiro Tzaras
9fd43eaca8
sip: media-manager: remove unused function prototypes
2021-04-12 08:38:24 +00:00
Evangelos Ribeiro Tzaras
af3cda9c5c
media-manager: codestyle
...
move public function `get_best_codec ()` to the bottom
2021-04-12 08:38:24 +00:00
Evangelos Ribeiro Tzaras
aebd8ff683
Introduce HACKING.md
...
To facilitate using phoshs/libhandys code style for newly written code
and to provide some guidelines if anyone wanted to change the style in
the existing codebase.
2021-04-09 10:20:03 +02:00
Evangelos Ribeiro Tzaras
b1add894be
mm-origin: fix memory leak
2021-04-07 18:25:09 +02:00
Evangelos Ribeiro Tzaras
e92ccb4f8b
mm-origin: codestyle
...
be consistent in the naming of callback functions
2021-04-07 18:22:56 +02:00
Evangelos Ribeiro Tzaras
3fd07c4dee
tests: don't special case tests needing FOR_TESTING define
...
This was introduced in 649da75
and was in preparation for the
sip testing code from 030313d
and 21abfb4
.
2021-04-06 16:55:33 +00:00
Evangelos Ribeiro Tzaras
a44c265903
sip: remove FOR_TESTING ifdef
2021-04-06 16:55:33 +00:00
Evangelos Ribeiro Tzaras
4a264252a7
plugins: build as shared library instead of shared module
2021-04-06 16:55:33 +00:00
Evangelos Ribeiro Tzaras
9703b1e43e
best-match: disconnect old signal handlers
2021-04-06 14:27:26 +00:00
Evangelos Ribeiro Tzaras
0bd6d7f2a5
best-match: Lookup contact if country code changed
...
Closes #217
2021-04-06 14:27:26 +00:00
Evangelos Ribeiro Tzaras
25d651c834
manager: set default origin
...
This is a bit of a hack to get the country code property hooked up
and will require a rework when multiple provider support is being added.
As the default origin is not being used anywhere else in the code
it's currently not a problem that we're not tracking if the default
origin is being removed.
Additionally test-manager.c needed some adjustment.
2021-04-06 14:27:26 +00:00
Evangelos Ribeiro Tzaras
a559587a19
mm: Implement country-code property
...
Closes #167
2021-04-06 14:27:26 +00:00
Evangelos Ribeiro Tzaras
463344c52b
Add API to get SIM country code
...
This is a copy of Mohammed Sadiq's code in purple-mm-sms
2021-04-06 14:27:26 +00:00
Evangelos Ribeiro Tzaras
622827d293
best-match: Use the country code
2021-04-06 14:27:26 +00:00
Evangelos Ribeiro Tzaras
e5832bbad3
application: Use the country code
2021-04-06 14:27:26 +00:00
Evangelos Ribeiro Tzaras
7d69d78b70
origin: Add country-code property
...
And add a binding in CallsManager for the default origin
2021-04-06 14:27:26 +00:00
Evangelos Ribeiro Tzaras
69b170ecfe
best-match: g_return_if_fail if not GeeCollection
...
Closes #254
Closes #227
2021-04-06 14:27:26 +00:00
Evangelos Ribeiro Tzaras
f8a57edc6d
contacts-provider: fix docstring
...
The caller takes ownership of the returned `CallsBestMatch`, so
this should be reflected in the docstring
2021-04-06 14:27:26 +00:00
Evangelos Ribeiro Tzaras
f84d3c0adf
call: g_return_if_fail: type check calls_call_get_contact ()
2021-04-06 14:27:26 +00:00
Evangelos Ribeiro Tzaras
26c8bad9cc
ci: add -noreset to xvfb-run invocation
...
Fixes issues in CI `cannot open display`. Similar to 8cd90523
2021-04-06 14:27:26 +00:00
Evangelos Ribeiro Tzaras
32c89ca9dd
contact-provider: remove trailing whitespaces
2021-04-06 14:27:26 +00:00
Guido Günther
e5827adb60
calls: Fix gtk-doc transfer annotation
...
Broken-by: 501d2914
2021-04-06 13:01:36 +00:00
Guido Günther
01f015a21c
provider: Fix gtk-doc transfer annotations
...
Broken-by: 9e92fb88
2021-04-06 13:01:36 +00:00
Guido Günther
443d23dd56
build: deduplicate sources
...
Shorten the needed sources from
calls_sources, calls_enum_sources, calls_resources,
wl_proto_sources, wayland_sources,
to
calls_sources
so adding new things such as generated dbus sources doesn't have to
happen in four locations but just one.
2021-04-06 14:18:06 +02:00
Guido Günther
5933a4005d
build: Move generated souces before source file list
...
This will be needed in the next commit
2021-04-06 12:50:31 +02:00
Evangelos Ribeiro Tzaras
75d32d0924
sip: Allow controlling automatic account loading via environment
2021-04-05 06:13:44 +00:00
Evangelos Ribeiro Tzaras
0b73103384
test: test-plugins: Add SIP plugin
2021-04-05 06:13:44 +00:00
Evangelos Ribeiro Tzaras
e3597f4a88
tests: use plugin load API
2021-04-05 06:13:44 +00:00
Evangelos Ribeiro Tzaras
9e92fb88af
provider: Add API for loading and unloading provider plugins
...
This is also used for our tests. In order to avoid code duplication
this is being moved to calls-provider.{c,h}.
2021-04-05 06:13:44 +00:00
Mohammed Sadiq
c30a41ffa9
Let calls-call be an abstract class
...
And adapt to changes.
A calls-mm-call IS-A calls-call (and so on)
2021-04-05 09:38:03 +05:30
Mohammed Sadiq
a30e1eaa8f
provider: Implement default methods
...
Simply return NULL when these methods are called.
If not implemented, calling these methods may result
in crash when the subclasses haven't implemented them.
2021-04-04 18:16:48 +05:30
Mohammed Sadiq
faa35e90dc
provider: Rename a variable
...
Provider is no longer an interface
2021-04-04 18:12:46 +05:30
Evangelos Ribeiro Tzaras
d67e690f33
new-call-box: Connect signals only if origins non-NULL
...
Fixes #252
2021-04-03 06:41:54 +00:00
Mohammed Sadiq
dc7c676df8
provider: Avoid private data
...
We only have a dummy variable here
2021-04-03 07:22:27 +05:30
Evangelos Ribeiro Tzaras
e6b730b805
sip: pipeline: clean up in finalize ()
2021-04-03 00:46:29 +02:00
Evangelos Ribeiro Tzaras
71cbc5c636
sip: provider: Fall back to reasonable values for local-port property
2021-04-03 00:46:29 +02:00
Evangelos Ribeiro Tzaras
5a7c22c80f
sip: provider: use g_get_user_config_dir () for account config
2021-04-03 00:46:29 +02:00
Evangelos Ribeiro Tzaras
21abfb4f37
test: Test CallsSipOrigin
2021-04-03 00:46:29 +02:00
Evangelos Ribeiro Tzaras
030313d42e
test: Add basic SIP provider tests
2021-04-03 00:46:27 +02:00
Evangelos Ribeiro Tzaras
840ffa4653
sip: do not auto load accounts when running tests
...
because `calls_sip_provider_load_accounts ()` looks at the home folder
for a configuration file.
2021-04-03 00:08:31 +02:00
Evangelos Ribeiro Tzaras
19e7f8f119
sip-media: enable echo cancellation
...
by setting "filter.want" to "echo-cancel" for the pulsesink and pulsesrc
GStElement's.
2021-04-03 00:08:31 +02:00
Evangelos Ribeiro Tzaras
8a6f1bb203
sip: fix infinite ringtone loop
...
by making sure the call-added signal is emitted early enough
so that all consumers (display, ringer, etc) have a chance of getting
notified when the call state changes from f.e. DIALING to DISCONNECTED
similar to how its done in 03d960ccaf
for the dummy provider.
2021-04-03 00:08:31 +02:00
Evangelos Ribeiro Tzaras
17ac56fe44
sip: slightly improved authentication
...
* removed nua_callstate_authenticating as it was never hit
* move debug statement further up, because we might not reach it if no
corresponding call is found
* handle 401 and 407 the same way
note: we should record which realm we're authenticating against during
REGISTER so we can prompt the user for additional credentials when
challenged for a different realm - still happens when calling from
a sip.linphone.org account to a jmp.bwapp.bwsip.io account.
2021-04-03 00:08:31 +02:00
Evangelos Ribeiro Tzaras
cadaa6a3e0
sip: use g_return_if_fail and friends only for public functions
2021-04-03 00:08:31 +02:00
Evangelos Ribeiro Tzaras
685aa1950e
application: open sip uri
2021-04-03 00:08:31 +02:00
Evangelos Ribeiro Tzaras
45285062ca
sip: improve connection handling by using relevant sofia tags
...
NUTAG_SUPPORTED and SIPTAG_EXPIRES_STR for instance
sip: include expire, urn uuid
sip.linphone.org accounts seems to be working!
2021-04-03 00:08:31 +02:00