Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
linphone-desktop
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
linphone-desktop
Commits
a9a3e896
Commit
a9a3e896
authored
Aug 16, 2017
by
nicolas
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix(Cli): set if there is not a proxy config when joining a conference
parent
34759e3a
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
12 additions
and
7 deletions
+12
-7
Cli.cpp
src/app/cli/Cli.cpp
+12
-7
No files found.
src/app/cli/Cli.cpp
View file @
a9a3e896
...
...
@@ -43,11 +43,16 @@ static void cliCall (QHash<QString, QString> &args) {
static
void
cliJoinConference
(
QHash
<
QString
,
QString
>
&
args
)
{
const
QString
sipAddress
=
args
.
take
(
"sip-address"
);
const
string
displayName
=
::
Utils
::
appStringToCoreString
(
args
.
take
(
"display-name"
));
shared_ptr
<
linphone
::
ProxyConfig
>
proxyConfig
=
CoreManager
::
getInstance
()
->
getCore
()
->
getDefaultProxyConfig
();
shared_ptr
<
linphone
::
Address
>
address
=
proxyConfig
->
getIdentityAddress
()
->
clone
();
address
->
setDisplayName
(
displayName
);
proxyConfig
->
setIdentityAddress
(
address
);
if
(
!
args
[
"default-display-name"
].
isEmpty
())
{
const
shared_ptr
<
linphone
::
Core
>
core
=
CoreManager
::
getInstance
()
->
getCore
();
const
shared_ptr
<
linphone
::
ProxyConfig
>
defaultProxyConfig
=
core
->
getDefaultProxyConfig
();
shared_ptr
<
linphone
::
Address
>
address
;
if
(
!
defaultProxyConfig
)
{
address
=
core
->
getPrimaryContactParsed
();
address
->
setDisplayName
(
::
Utils
::
appStringToCoreString
(
args
.
take
(
"default-display-name"
)));
core
->
setPrimaryContact
(
address
->
asString
());
}
}
args
[
"method"
]
=
QStringLiteral
(
"join-conference"
);
CoreManager
::
getInstance
()
->
getCallsListModel
()
->
launchAudioCall
(
sipAddress
,
args
);
}
...
...
@@ -151,6 +156,7 @@ void Cli::Command::execute (QHash<QString, QString> &args) const {
void
Cli
::
Command
::
executeUri
(
const
shared_ptr
<
linphone
::
Address
>
&
address
)
const
{
QHash
<
QString
,
QString
>
args
;
//TODO: check if there is too much headers.
for
(
const
auto
&
argName
:
mArgsScheme
.
keys
())
{
const
string
header
=
address
->
getHeader
(
::
Utils
::
appStringToCoreString
(
argName
));
args
[
argName
]
=
QByteArray
::
fromBase64
(
QByteArray
(
header
.
c_str
(),
header
.
length
()));
...
...
@@ -176,7 +182,7 @@ Cli::Cli (QObject *parent) : QObject(parent) {
{
"sip-address"
,
{}
},
{
"conference-id"
,
{}
}
});
addCommand
(
"join-conference"
,
tr
(
"joinConferenceFunctionDescription"
),
::
cliJoinConference
,
{
{
"sip-address"
,
{}
},
{
"conference-id"
,
{}
},
{
"d
isplay-name"
,
{
STRING
,
true
}
}
{
"sip-address"
,
{}
},
{
"conference-id"
,
{}
},
{
"d
efault-display-name"
,
{
STRING
,
true
}
}
});
}
...
...
@@ -227,7 +233,6 @@ void Cli::executeCommand (const QString &command, CommandFormat *format) const {
return
;
}
// TODO: Check if there is any header when the `method` header is missing.
const
QString
functionName
=
::
Utils
::
coreStringToAppString
(
address
->
getHeader
(
"method"
)).
isEmpty
()
?
QStringLiteral
(
"call"
)
:
::
Utils
::
coreStringToAppString
(
address
->
getHeader
(
"method"
));
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment