Commit Graph

330 Commits

Author SHA1 Message Date
NeverExist
75c8b71ac9 add new functions for chat
add search among chat.
add textarea tag, support multi-line text messages.
add a bottom jump button
2017-07-08 00:18:51 +09:00
Gioacchino
fcec555cd0 Merge pull request #927 from Emotyco/libresapi_lobbies_invitation
Added to libresapi: Handling lobbies invitations
2017-07-07 11:57:17 +02:00
Konrad
f0ad68789b Fixed: Libresapi was throwing exception when requested to add new cert which was empty 2017-07-06 22:44:45 +02:00
Konrad
11d02f4612 Added: Handling requests to answer invitation to lobby 2017-07-06 14:08:50 +02:00
Konrad
c9bfe4b526 Added: Handling requests to get lobbies invitations 2017-07-06 14:07:33 +02:00
Konrad
aca6233dbf Added: Handling requests to invite peers to lobby 2017-07-06 14:05:48 +02:00
csoler
5b1def1405 Merge pull request #912 from Emotyco/libresapi_avatar_handlers
Changed: Request handler for avatar return failure if an error occurred while obtaining data
2017-07-04 10:25:40 +02:00
Konrad
0f93dd2f9e Fixed: Room's participants list is correctly refreshed. Previously it did not react to new participants in room 2017-06-30 12:38:09 +02:00
Konrad
e55199597b Changed: Request handler for avatar return failure if an error occurred while obtaining data 2017-06-29 22:38:12 +02:00
Konrad
e128fcbd87 Added: Creating identity with avatar in libresapi 2017-06-25 15:35:23 +02:00
Konrad
54166cec86 Added: Handling requests to set and get identity avatar 2017-06-25 14:30:38 +02:00
Konrad
66a9dadb98 Fixed: Information about wrong password 2017-06-24 12:05:32 +02:00
Konrad
2aac999568 Fixed: Duplication of handler declaration 2017-06-24 12:02:28 +02:00
Gioacchino Mazzurco
b206015e70 libresapi: expose identity avatar in JSON API
The avatar is sent as a base64 string

The solution is not optimal but is the best we can do inside a JSON and
it's acceptable for the moment
2017-06-20 15:33:28 +02:00
csoler
a29bc4408e Merge pull request #874 from G10h4ck/silent_initiate_distant_chat_api
libresapi: silent /chat/initiate_distant_chat
2017-06-16 12:24:45 +02:00
Jeetu Golani
80ec9b7321 Included QStringList header in ApiServerLocal.cpp [Issue 879] 2017-06-12 15:51:26 +05:30
Gioacchino Mazzurco
edd82d0ef2 libresapi: stop assuming first chat message is own 2017-06-07 21:37:03 +02:00
Gioacchino Mazzurco
528317d374 libresapi: silent /chat/initiate_distant_chat
Avoid to forge the
[Starting distant chat. Please wait for secure tunnel to be established]
message on requesting chat id from API as it is a nuisance in most
libresapi use cases
2017-06-06 18:57:32 +02:00
csoler
5eaab25e78 Merge pull request #833 from Emotyco/libresapi_network_configuration
Added: Network configuration to libresapi.
2017-06-03 20:00:54 +02:00
Gioacchino Mazzurco
efdfa4666b Merge branch 'libresapi_attempt_connection' into qmlapp_pex_alpha 2017-06-02 10:39:42 +02:00
Gioacchino Mazzurco
8b72c9c453 libresapi expose connection attempt method
Now it is possible to trigger a connection attempt via JSON API

The API call success with any valid peer id

/peers/attempt_connection
{"peer_id":"d441e8890164a0f335ad75acc59b5a49"}
{"data":null,"debug_msg":"","returncode":"ok"}

The API call fail if the peer id is invalid

/peers/attempt_connection
{peer_id:"9090"}
{"data":null,"debug_msg":"Invalid peer_id\n","returncode":"fail"}

Related to issue: Touching offline trusted node cloud should trigger connection attempt
https://gitlab.com/angesoc/RetroShare/issues/4
2017-06-02 10:26:15 +02:00
Gioacchino Mazzurco
59b77da6a2 Merge branch 'master' into qmlapp_pex_alpha 2017-05-31 12:11:15 +02:00
sehraf
a3ee85a30d Add I2P BOB support to libretroashare and RetroShare GUI 2017-05-24 19:40:01 +02:00
Konrad
9b67e93e01 Added: Network configuration to libresapi. 2017-05-21 19:51:52 +02:00
Gioacchino Mazzurco
db3dad3e23 Local API binary output support + qml image example 2017-05-18 21:57:24 +02:00
Gioacchino Mazzurco
745462a61b Merge branch 'v0.6-GxsTransport' into qmlapp_pex_alpha 2017-05-15 15:05:07 +02:00
csoler
9a0df3f757 Merge pull request #804 from PhenomRetroShare/Fix_Warnings
Fix warnings
2017-05-08 22:21:28 +02:00
Gioacchino Mazzurco
f67617a449 Add override and final placeolders for old GCC compatibility 2017-05-08 16:57:37 +02:00
Phenom
523730f31a Fix Warnings: unused parameter ‘resp’, 'req' & 'resp'
warning: unused parameter ‘resp’ [-Wunused-parameter]
  virtual void gxsDoWork(Request &req, Response &resp)
                                                 ^~~~
2017-05-08 12:21:08 +02:00
Phenom
a6acc72c89 Fix Warnings: this ‘if’ clause does not guard...
warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
     if(data.isRawData())
     ^~
2017-05-08 12:18:51 +02:00
Gioacchino Mazzurco
3fddbaf070 Merge branch 'master' into qmlapp_pex_alpha 2017-04-28 13:26:31 +02:00
Phenom
6e42cf4200 Fix Clang warnings: field 'mPassword' will be initialized after field
'mPrevIsBad'

warning: field 'mPassword' will be initialized after field 'mPrevIsBad'
[-Wreorder]
2017-04-25 09:44:59 +02:00
electron128
be9f126898 Merge pull request #781 from Sonetio/libresapi_requests
Added few requests handling in libresapi
2017-04-24 18:43:17 +02:00
Konrad
8da5e15180 Changed: difference time to absolute time. 2017-04-24 16:00:23 +02:00
Konrad
f571b05693 Added: Checking if the vector is empty;
Changed: Grouped values into one member
2017-04-22 11:06:56 +02:00
Konrad
8c0b7ce776 Fixed: Responds sends now correct time difference 2017-04-21 23:44:00 +02:00
Konrad
c9f618ddf6 Added: Notification about changed peer status 2017-04-20 19:09:57 +02:00
Konrad
9600359bdb Fixed: Password was not stored after creating a new location 2017-04-20 18:09:19 +02:00
Gioacchino Mazzurco
5ee517b64f Expose libresapi for GXS contacts import/export
To import contact
/identity/import_key
{"radix":"AgIRBAAABd..."}

To export contact
/identity/export_key
{"gxs_id":"ffffffffffffffffffffffffffffffff"}

In both cases if everithing went fine the answer is something like
{"data":{"radix":"AgIRBAAABd...", "gxs_id":"fff..."}, "returncode":"ok"}

Some retrocompatible adaptations were necessary to libretroshare

RsGenExchange::deserializeGroupData
p3IdService::deserialiseIdentityFromMemory

Now accept an extra optional pointer parameter to return the id of the
  key so we can return it back from libresapi too and can be used to
  request more information about the key to the API.
2017-04-19 23:48:25 +02:00
Konrad
4a0b51ce2d Added: to response information whether the identity is a contact 2017-04-19 22:03:24 +02:00
Konrad
b43bedf669 Added: Handling requests to set opinion about identity 2017-04-18 23:00:59 +02:00
Konrad
120ca9d078 Added: Handling requests to set opinion about identity 2017-04-18 22:58:15 +02:00
Konrad
3f54568d7f Added: Handling requests to get details about identity 2017-04-18 22:56:35 +02:00
Gioacchino Mazzurco
4455bfa92d Merge branch 'master' into merge_alpha_master 2017-04-18 21:30:25 +02:00
Konrad
76dd7fe47f Added: Handling requests to add and remove contact 2017-04-18 14:02:14 +02:00
Konrad
4a99000f16 Added: Handling requests to get and set node options 2017-04-18 14:00:30 +02:00
Phenom
19196e2cb0 Fix Clang warnings: ariable 'status' is used uninitialized
warning: variable 'status' is used uninitialized whenever 'if' condition
is false [-Wsometimes-uninitialized]
        else if(state_string == "away")
                ^~~~~~~~~~~~~~~~~~~~~~
2017-04-17 21:50:18 +02:00
Phenom
a3a53b970d Fix Clang warnings: unused parameter 'req'
warning: unused parameter 'req' [-Wunused-parameter]
void PeersHandler::handleGetStateString(Request& req, Response& resp)
2017-04-17 21:49:54 +02:00
Phenom
32eeb957b2 Fix Clang warnings: unused private field
warning: private field 'mAutoBanIdentitiesLimit' is not used [-Wunused-
private-field]
    float mAutoBanIdentitiesLimit ;
warning: private field 'mFiles' is not used [-Wunused-private-field]
    RsFiles* mFiles;
2017-04-17 21:35:29 +02:00
Konrad
fd33315146 Added: Handling requests to create lobby 2017-04-14 17:44:17 +02:00
Konrad
93aeae0f59 Added: Handling requests to delete identity 2017-04-14 17:41:35 +02:00
Konrad
144d57047c Fixed: Thread safe access to RsControlModule member variables 2017-04-13 13:40:30 +02:00
Konrad
dcc8c6e4c3 Changed: Using PeersHandler::mRsPeers instead of rsPeers 2017-04-13 13:31:32 +02:00
Konrad
aa81cc16d0 Added: Functions for handling PGP account details requests 2017-04-12 20:24:18 +02:00
Konrad
9402b8e239 Fixed: mFixedPassword remained empty after logging 2017-04-10 23:42:22 +02:00
Konrad
e1350a0b34 Fixed: Re-selecting accounts via RsControlModule;
Added: Sending feedback about incorrect password
2017-04-10 22:58:23 +02:00
Gioacchino Mazzurco
28682860c6 ChatHandler::handleUnreadMsgs: set query status 2017-04-03 21:04:44 +02:00
Gioacchino Mazzurco
f12cc9ca68 Disable limit to 20 entries in JSON API pagination 2017-04-03 19:21:54 +02:00
Konrad
fbc1bb4e82 Added: function for handling autosubscribing lobbies 2017-03-29 16:06:39 +02:00
Konrad
22956be00f Deleted: functions for hadling particular lobbies types in ChatHandler 2017-03-28 11:24:16 +02:00
Konrad
6e530027f8 Added: tokens in PeersHandler 2017-03-28 11:20:51 +02:00
Konrad
efd6ce3ed5 Changed: Simplified asking for deferred self signature 2017-03-28 11:19:50 +02:00
Konrad
569458a1c1 Changed: Qt dependecies are optional 2017-03-28 11:18:27 +02:00
Konrad
4031e493fb Deleted: unused stateTokens 2017-03-27 16:11:04 +02:00
Konrad
c33107c1cc Fixed: backward comptiblity 2017-03-26 19:12:04 +02:00
Konrad
bef75408da Fixed building on Travis CI 2017-03-26 15:11:07 +02:00
Konrad
8624c9374d Added functions for hadling particular lobbies types to ChatHandler 2017-03-25 18:33:35 +01:00
Konrad
194878a358 Added functions for handling own and not own identities to IdentityHandler 2017-03-25 18:31:13 +01:00
Konrad
cb32f304a9 Added states handling to PeersHandler 2017-03-25 18:28:31 +01:00
Konrad
28d37c2968 Added password storing to RsControlModule for GUI benefits 2017-03-25 18:25:26 +01:00
Konrad
39967b7ce7 Added name of requests to be used by GUI 2017-03-25 18:23:28 +01:00
Konrad
ae95b49f8a Added SettingsHandler to handle response to settings requests 2017-03-25 18:20:53 +01:00
Konrad
cb04134114 Added Windows support to libresapi when working with retroshare_android_service 2017-03-25 18:15:47 +01:00
Gioacchino Mazzurco
abe84a4f81 Improve Contacts: sorting, searching and unread
ChatHandler::handleUnreadMsgs(...) deprecate 'id' field
  in favour of 'chat_id'
IdentityHandler::handleWildcard(...) reduce sleep time from 500 to 50 ms
IdentityHandler::handleWildcard(...) expose 'is_contact' to JSON API
Split contacts list delegate into GxsIdentityDelegate.qml
Update to QtQuick.Controls 2.0 because 1.4 is not supported anymore and
  2.1 is not available yet in Qt 5.7.1
ChatView.qml mark messages as read
Set refreshTimer.triggeredOnStart=true to improve reponsiveness of views
Contacts.qml use a Popup that is available in Controls 2.0 instead of a
  castrated Dialog to display full fingerprint
TrustedNodesView.qml check if locations[*].is_online is an array before
  attempting calling reduce
main.qml added menuentry to shutdown de core
main.qml added menuantry to search contact
2017-03-24 12:02:13 +01:00
csoler
c61ccda431 fixed compilation problem caused by a bug in qtcreator global replace. Warning: always check the result of qtcreator global replace 2017-02-07 22:04:07 +01:00
csoler
37f3e1a62a fixed problem in ID creation code. 2017-02-07 20:15:55 +01:00
Gio
6c6b437db1 qml-app: Fix responsiveness of ChatView
ChatHandler::handleMessages(...) tick() before repling so the raw
  message queue is processed
ChatHandler::handleLobbies(...) make sure tick() is called without
  previous mutex locking, putting the critical section inside a block
ChatView.qml remove unnecessary request to statetoken service that
  slowed down processing by half, increased chat message refresh time
  to reduce performance hit
2016-12-10 20:23:30 +01:00
Gio
c3aca0cf26 Implement a working Distant Chat prototype in Qml
Deprecate id field in JSON API as it may cause problems in Qml
Offer gxs_id field in JSON API as an id alternative
LibresapiLocalClient support callbacks now an instance may be shared for
  different tasks
Expose an instance of LibresapiLocalClient to Qml, type exposure is kept
  for retrocompatibility but deprecated
Qml app now has a tab that permit to exchange some message with selected
  distant peer
2016-12-08 15:56:23 +01:00
Gio
9eef412b44 Expose libresapi for distant chat
Added macro to deprecate symbols usage in a crossplatform way.
Deprecated Request::mMethod and related stuff that make implementation
 more complex without advantage.
Added /chat/{initiate_distant_chat, distant_chat_status,
 close_distant_chat} to libresapi.
Solved subtle bug in ChatId::ChatId(std::string str) that caused zeroed
 DistantChatPeerId being created.
2016-12-07 20:29:33 +01:00
felisucoibi
628177c302 fix for windows compile 2016-11-16 11:22:23 +01:00
cyril soler
de6f753fec fixed compilation due to previous commit 2016-11-15 09:18:51 +01:00
Gio
8ab3c7de26 Merge branch 'master' into android 2016-11-07 14:37:23 +01:00
Phenom
2db8dbd45f Fix El Capitan OSX 10.11 Compil 2016-11-02 21:40:46 +01:00
Gio
10ec1144eb Simplify QML to work better on both Desktop and Phone
- Set request method to GET by default in ApiLocalConnectionHandler to avoid
/peers request fail randomly
- Use TabView instead of SwipeView to not depend on Qt 5.7.0 (latest version)
- AddTrustedNode simplified layout to avoid unexpected behaviour on some phones
- Locations add sslid property to root Item to avoid unexpected behaviour when
multiple locations are available
- TrustedNodesView color connected friends with green and offline with grey
- Ignore kdevelop 4 files
2016-10-26 20:37:28 +02:00
Gio
ea42d822c2 Merge branch 'master' into android 2016-10-26 13:43:24 +02:00
Gio
633a6cf8c2 Fixed a bunch of warnings in safe ways 2016-10-13 00:01:33 +02:00
Gio
cf1c49aa3a Advances on trusted node addings
ApiServerLocal trim method/path line to avoid white spaces parsing
ApiServerLocal add support for passing METHOD in request
AddTrustedNode.qml add ability to copy and paste keys
2016-09-22 12:48:08 +02:00
mr-alice
0757fb303c merged upstream/master 2016-09-20 20:51:50 +02:00
mr-alice
a2e34f9cc6 moved regular expression classes into a separate namespace 2016-09-13 12:05:22 +02:00
sehraf
e4bd7f66a0 add dht/nat to librespai stats 2016-08-30 21:58:07 +02:00
sehraf
51c98fdf50 add stats to libresapi 2016-08-30 21:50:20 +02:00
Gio
279551fe8d Retroshare android service now run and start at boot on android, the qml app is still disfunctional 2016-08-23 12:15:28 +02:00
Gio
9a980def2c libretroshare now compiles for Android, instruction on how to do it included 2016-08-23 12:15:28 +02:00
Phenom
275c47eff9 Add Title when ask for password. 2016-08-09 01:22:14 +02:00
Gio
183ac22aba ApiServerLocal run on it's own thread to avoid stopping UI
ApiLocalConnectionHandler can now handle both buffered (QLocalSocket
based) and unbuffered (like ncat or simple scripts) clients
2016-08-08 14:23:56 +02:00
Gio
353308e2a5 ApiLocalConnectionHandler class quit() at the end outside if 2016-08-03 14:35:45 +02:00
Gio
e4e29c5adc quit ApiLocalConnectionHandler after replying API query 2016-08-03 00:50:49 +02:00
Gio
7c2e2bd503 take in account that QLocalSocket is of type STREAM so it doesn't emit readyRead event for each write() on the other side 2016-07-28 17:50:00 +02:00
Gio
fe7de83529 WebUI is now optional but enabled by default at compile time 2016-07-28 14:08:49 +02:00
Gio
b5f95cb651 libresapilocal is now optional (enabled by default) 2016-07-15 11:25:31 +02:00