Commit Graph

713 Commits

Author SHA1 Message Date
Haelwenn (lanodan) Monnier 72c2915ecd
Pleroma.Web.MastodonAPI.StatusView: Fix status.json so it renders threads 2018-06-15 22:14:17 +02:00
lambda 8c7fdcb31b Merge branch 'feature/twitterapi-unrepeat' into 'develop'
Add TwitterAPI unretweet endpoint and cleanup AP.unannounce

See merge request pleroma/pleroma!218
2018-06-14 07:19:36 +00:00
Francis Dinh fc15f30a3c fixup test 2018-06-13 21:45:27 -04:00
Francis Dinh 1555c66650 Add unretweet TwAPI endpoint and cleanup AP.unannounce 2018-06-13 21:33:36 -04:00
Henry Jameson 9c1cf1befb formatting 2018-06-12 15:01:40 +03:00
Henry Jameson f42ffbe9a8 Initial invites support + tests. 2018-06-12 14:55:16 +03:00
William Pitcock c773f42ca4 tests: update twitterapi user view tests for new locked variable 2018-06-11 22:15:53 +00:00
William Pitcock f8e0942745 twitter api: add approve/deny endpoints 2018-06-11 22:15:53 +00:00
William Pitcock d116af3bee tests: add tests for /api/pleroma/friend_requests 2018-06-11 22:15:53 +00:00
William Pitcock 993312cdb3 twitterapi: add profile setting for locked/unlocked accounts 2018-06-11 22:15:53 +00:00
William Pitcock a0c5b42e29 tests: assert the state prior to mutating it as well as afterward 2018-06-11 22:15:53 +00:00
William Pitcock c99b9b9d92 testsuite: add mastodon api tests 2018-06-11 22:15:53 +00:00
lambda 7f79b467b1 Merge branch 'feature/domain-blocks' into 'develop'
Domain blocks

See merge request pleroma/pleroma!190
2018-06-11 11:19:45 +00:00
William Pitcock 299ef74f2e tests: add regression test for locking/unlocking account updates 2018-06-08 02:52:34 +00:00
D Anzorge 2cebaa7d3a Add OAuth controller tests
Tests for Pleroma.Web.OAuth.OAuthController
2018-06-06 03:18:11 +02:00
eal 4856962434 MastoAPI: add domain blocking. 2018-06-03 22:21:23 +03:00
lain 8073af6e10 Better error handling for OstatusController. 2018-06-03 21:04:44 +02:00
lain 06439f64d0 Better error handling for ActivityPubController 2018-06-03 19:58:59 +02:00
lain 4856ba596f Better error handling for MastodonApiController. 2018-06-03 19:28:11 +02:00
lain 0f70e83e8c Better error handling in TwitterApiController. 2018-06-03 19:11:22 +02:00
lambda 98b8f08783 Merge branch 'fix/twitterapi-incorrect-follows-you' into 'develop'
TwitterAPI: fix "Follows you" being shown for the wrong user.

Closes pleroma-fe#89

See merge request pleroma/pleroma!185
2018-06-01 08:51:04 +00:00
eal 935e544e19 TwitterAPI: fix "Follows you" being shown for the wrong user. 2018-05-31 15:27:42 +03:00
lain 349400c06a Fix url guessing attacks. 2018-05-30 20:00:27 +02:00
William Pitcock f569b67cda tests: update for html changes 2018-05-27 13:03:34 +00:00
lain 841ee8e3e4 Simplify DM query.
Should also use indexes better.
2018-05-26 16:25:32 +02:00
lain 4b3ec53514 Merge branch 'develop' into csaurus/pleroma-feature/mstdn-direct-api 2018-05-26 16:00:59 +02:00
lain 0a6c897c94 Formatting. 2018-05-26 15:11:50 +02:00
lain bfce29866f Make Mastodon follow hack more explicit. 2018-05-26 15:07:21 +02:00
lain 3839a11ef5 Don't treat remote accepts/rejects as local.
Also, use specialized functions to get safe data.
2018-05-26 14:07:46 +02:00
William Pitcock 1db0dc3072 tests: add tests to verify the accept request is discarded if no follow activity could be found 2018-05-26 11:20:53 +00:00
William Pitcock 7cf3cf77cf activitypub transmogrifier: cleanups and tests for incoming accepts/rejects 2018-05-25 12:53:12 +00:00
William Pitcock 1f3eb0f470 testsuite: fix module name for CommonAPI.Test (was duplicated with CommonAPI.UtilsTest) 2018-05-25 06:12:30 +00:00
William Pitcock 5f06a1a3c5 testsuite: fix module name for CommonAPI.Test (was duplicated with CommonAPI.UtilsTest) 2018-05-25 05:29:00 +00:00
lambda f3a71f2986 Merge branch 'feature/lists' into 'develop'
Mastodon List API

See merge request pleroma/pleroma!138
2018-05-24 20:22:43 +00:00
lambda c2dcd767cf Merge branch 'feature/incoming-remote-unfollow' into 'develop'
Add support for incoming remote unfollows and blocks/unblocks

See merge request pleroma/pleroma!158
2018-05-24 19:52:24 +00:00
lambda c41012053a Merge branch 'feature/change-password' into 'develop'
Feature/change password

See merge request pleroma/pleroma!166
2018-05-24 17:16:37 +00:00
eal 3dbd9809d4 MastoAPI: add lists. 2018-05-24 15:34:39 +03:00
lain 0b5bc62b33 Don't save double tags in AP objects we create
This crashed Mastodon workers.
2018-05-23 17:25:24 +02:00
lambda 06c97f211f Merge branch 'feature/deps-migration' into 'develop'
Migrate to comeonin 4 and Cachex 3

See merge request pleroma/pleroma!162
2018-05-23 09:03:11 +00:00
Francis Dinh 72b93d13f8 Hook up block/unblock to TwitterAPI 2018-05-22 05:41:17 -04:00
Francis Dinh b2c6ae7d82 Hook up unfollow and (un)block to MastoAPI + tests 2018-05-22 04:27:40 -04:00
csaurus 4fd9df100f Merge branch 'develop' into feature/mstdn-direct-api 2018-05-21 20:19:37 -04:00
Syldexia 69aa7c213a Fixed test 2018-05-21 23:06:03 +01:00
Syldexia d0690622cd Added endpoint for changing passwords 2018-05-21 23:06:03 +01:00
William Pitcock 75cfd9d34d webfinger: fix finding the XRD uri for statusnet instances 2018-05-21 12:41:31 +00:00
Francis Dinh d045b96f95 Add tests for incoming unfollow over OStatus 2018-05-21 05:11:13 -04:00
Francis Dinh cc5373b846 Fix unblock handling 2018-05-21 05:00:58 -04:00
Francis Dinh 89c5de9096 Fix unfollows 2018-05-20 21:01:14 -04:00
Francis Dinh 56de0216ae pass user to User.blocks?/2 instead of ap_id 2018-05-20 19:45:05 -04:00
Francis Dinh 1afd6d37bd Merge remote-tracking branch 'upstream/develop' into feature/incoming-remote-unfollow
Fixed some conflicts in transmogrifier.ex
2018-05-20 19:17:15 -04:00
Thog e55c6f311b
Migrate to comeonin 4 and Cachex 3
Also fix some warning in the code and add a missing alias
2018-05-20 20:08:40 +02:00
lain 413de8e4bc More fixes. 2018-05-20 19:26:09 +02:00
lain ff007af0c2 Return visilility in twitter api, too. 2018-05-20 18:01:24 +02:00
lain 434601a5c3 Return private / direct posts on user timelines, too. 2018-05-20 16:15:18 +02:00
lambda 8b0c222b43 Merge branch 'feature/account-deletion' into 'develop'
Feature/account deletion

Closes #115

See merge request pleroma/pleroma!157
2018-05-20 10:57:19 +00:00
Francis Dinh d46393f6ef Fix test for blocks 2018-05-20 02:15:56 -04:00
Francis Dinh 1e43de0f86 Formatting and add tests for blocks/unblocks 2018-05-19 21:23:52 -04:00
Thog 6f39ecc41b
Support Undo like activities (Fix #139) 2018-05-19 22:14:15 +02:00
Syldexia d1366f8d46 Modified deleting an account to run as a task 2018-05-19 13:35:49 +01:00
lambda 7831b38705 Merge branch 'feature/webfinger-mime-ld-json' into 'develop'
webfinger: handle application/ld+json links

See merge request pleroma/pleroma!159
2018-05-19 09:31:08 +00:00
William Pitcock 4033ed6714 tests: add test for hubzilla follow activity too 2018-05-19 03:28:32 -05:00
William Pitcock 19c96c8a19 tests: add tests for Transmogrifier.maybe_fix_user_object() 2018-05-19 03:28:30 -05:00
William Pitcock f32e19f668 webfinger: add tests 2018-05-19 01:28:27 -05:00
Francis Dinh 8d11bae0d5 Revert "Undo formatting in user.ex"
This reverts commit e6dc15b96c.
2018-05-17 23:55:00 -04:00
Francis Dinh e6dc15b96c Undo formatting in user.ex 2018-05-17 23:53:34 -04:00
Francis Dinh d8c842a771 Add support for incoming remote unfollows 2018-05-17 22:15:57 -04:00
lain 1d4bbec6b3 Fix User search.
Now uses a trigram based search. This is a lot faster and gives better
results. Closes #185.
2018-05-16 17:55:20 +02:00
csaurus d0ad13c12e Add direct_note[_activity]_factory and a couple tests 2018-05-14 21:54:25 -04:00
csaurus 987a52cf6f Post direct status test 2018-05-13 21:21:42 -04:00
Syldexia 98b36d359a Fixed formatting and test 2018-05-13 15:43:42 +01:00
Syldexia 5bfb7b4ce6 Moved account deletion stuff to somewhere that hopefully makes more sense 2018-05-13 14:36:02 +01:00
Syldexia a16117225f Added endpoint for user account deletion 2018-05-13 14:35:48 +01:00
lain 89954a2ce7 Fix format. 2018-05-13 13:02:24 +02:00
lain c7a85de35c Revert "Remove 'unlisted' handling for now."
This reverts commit 1027d1f696.
2018-05-13 12:38:13 +02:00
lain 1027d1f696 Remove 'unlisted' handling for now.
It's just too slow (over 1 second on small systems, haven't looked at
the queries in detail yet). We'll need some other way to handle it.
2018-05-13 12:07:11 +02:00
lambda aeff2d6474 Merge branch 'feature/unrepeats' into 'develop'
Add unrepeats

Closes #69

See merge request pleroma/pleroma!113
2018-05-13 09:32:29 +00:00
lain ec531ca281 Add test. 2018-05-13 11:18:48 +02:00
Francis Dinh 16b793656d Add tests for unrepeats 2018-05-11 15:30:47 -04:00
Pierrick Brun 89603eda9e do not create notification for yourself 2018-05-11 11:31:17 +02:00
lain 9810153aeb Streamer: Don't send out stream events for blocked users. 2018-05-05 13:40:47 +02:00
lain c464355d1a Idempotency: Use special cache, keep for 6 hours. 2018-05-05 11:15:57 +02:00
lain 90c4bed0af Don't expire idempotency cache for five minutes. 2018-05-04 21:15:39 +02:00
lain fcd3eca167 MastodonAPI: Support idempotency key. 2018-05-04 20:30:29 +02:00
Francis Dinh 8b4ee0ea51 Fix formatting 2018-05-04 03:19:48 -04:00
lain bc215f5684 Fix format. 2018-04-29 11:28:26 +02:00
lambda b7584edcea Merge branch 'patch-bio' into 'develop'
replace newlines in profiles with <br>

See merge request pleroma/pleroma!136
2018-04-29 09:26:47 +00:00
lambda a7a40bb8f1 Merge branch 'fix/blocked-user-boosts' into 'develop'
ActivityPub.ex: do not return boosted statuses from blocked users.

See merge request pleroma/pleroma!111
2018-04-28 13:49:12 +00:00
Wim Vanderbauwhede 6908f29e0a Added a test (written by @andrewzah) for the MR 2018-04-28 12:01:43 +01:00
Francis Dinh 2d775bf1be Merge branch 'feature/unrepeats' of git.pleroma.social:normandy/pleroma into feature/unrepeats 2018-04-25 01:58:50 -04:00
Francis Dinh e981280fa7 Formatting fixes 2018-04-25 01:43:45 -04:00
Francis Dinh 9e0dd21ed6 Merge branch 'develop' of https://git.pleroma.social/pleroma/pleroma into feature/unrepeats 2018-04-25 00:46:28 -04:00
Francis Dinh 8c0806539c Embed announce activity data instead of linking to it 2018-04-22 21:28:51 -04:00
lain 0574df273c Small cleanup. 2018-04-22 10:01:10 +02:00
eal 22bfeac256 Update note count in ActivityPub.create. 2018-04-21 12:58:04 +03:00
lain 9e6ae44729 Formatting fixes. 2018-04-21 09:43:53 +02:00
Francis Dinh f0798440de Use correct activity for undo 2018-04-20 23:22:16 -04:00
Francis Dinh c5dc7e6e31 Merge branch 'develop' of https://git.pleroma.social/pleroma/pleroma into feature/unrepeats 2018-04-20 16:48:18 -04:00
lain a61e8ac154 Formatting. 2018-04-20 13:10:57 +02:00
eal fa37acfcc7 TwitterAPI: Add Qvitter notification endpoint. 2018-04-19 21:46:59 +03:00
Francis Dinh 7b4f55238e Handle unrepeats via the TwitterAPI 2018-04-18 06:00:40 -04:00
Francis Dinh 687db1bc3a Expose unannounce activity so that it can be tested 2018-04-18 03:39:42 -04:00
Francis Dinh 42279f54cf Return target status in MastoAPI endpoint instead of reblog activity 2018-04-16 23:30:52 -04:00
Francis Dinh 5b0d0b9ab2 Add unreblogging tests 2018-04-14 22:34:06 -04:00
eal 48380aeccc ActivityPub.ex: do not return boosted statuses from blocked users. 2018-04-14 14:26:20 +03:00
Gian Sass 2de2e29df2 Oops 2018-04-11 15:51:02 -04:00
Gian Sass 3a5c0465eb Add unit test for pinned statuses 2018-04-11 15:48:32 -04:00
lain 70bcdf32bd Only search in public data for now.
This should be the data the user is allowed to see later, but this
will stop accidental private message leaks.
2018-04-07 16:40:45 +02:00
lain b3b7ab5d9a Load all users at once in timelines. 2018-04-02 16:35:41 +02:00
lain 360c51f1f5 Use context_ids directly if we have them. 2018-04-02 15:28:35 +02:00
lain bc31bee7c4 Generates contexts and ids on insertion time. 2018-04-02 15:17:09 +02:00
lain a4db3a732f Pre-fetch conversation ids. 2018-04-02 14:46:56 +02:00
lain 1b57522bba Fix some test stuff. 2018-04-02 13:13:04 +02:00
lain 2222e5599c Don't fetch anything except ap_id for follower / following
collections.

Should speed up the queries because ecto doesn't have to parse the json.
2018-03-31 20:02:09 +02:00
lain 802736679c Remove unused ActivityRepresenter module. 2018-03-30 16:50:30 +02:00
lain e90f8f6c4b TwApi ActivityView: Add delete activities. 2018-03-30 15:32:43 +02:00
lain 1f32ba052c TwApi ActivityView: Add follows. 2018-03-30 15:17:13 +02:00
lain 4afbef39f4 Format the code. 2018-03-30 15:01:53 +02:00
lain c1d529ee94 TwApi ActivityView: Add announces. 2018-03-30 14:46:36 +02:00
lain 1f1caab138 TwApi ActivityView: Add Like rendering. 2018-03-30 13:49:09 +02:00
lain 361016349f Add ActivityViewTest. 2018-03-30 12:57:55 +02:00
lain e30752bc79 Add basic activity view. 2018-03-27 22:24:19 +02:00
lain 37e5014d3e Reduce OP fetching queries. 2018-03-27 18:18:24 +02:00
lain ff7afe46b9 Don't try to fetch OP if none is there. 2018-03-27 17:43:08 +02:00
Francis Dinh 9556c8f6e7 Forgot to fix one of the links in a test 2018-03-27 02:08:46 -04:00
Francis Dinh 5ba2f4b6d8 Update tests to reflect hashtag link changes 2018-03-27 02:07:07 -04:00
William Pitcock 2aea3bc632 activitypub transmogrifier: rewrite incoming hashtags 2018-03-24 16:42:17 -05:00
lain e3a81fe58f Fetch the same data from json webfinger as from xml webfinger. 2018-03-24 14:45:54 +01:00
lain eb7ce61ca5 Fix hashtags. 2018-03-24 11:03:10 +01:00
lain 5da2355e71 For outgoing objects, fake mastodon style ap id for ostatus. 2018-03-23 16:07:02 +01:00
lain 32ae918843 Clear caches on test. 2018-03-22 12:44:32 +01:00
William Pitcock ff7afc0465 tests: webfinger: test quering a JSON response for activitypub actor URI 2018-03-22 00:36:13 -05:00
William Pitcock 8aa639a450 webfinger: support JSON output 2018-03-22 00:35:51 -05:00
William Pitcock 0ee6e8af26 mastodon api tests: invalidate user cache prior to importing a test reply
This is needed to ensure the user cache does not throw nil when creating the mentions
list.

Signed-off-by: lain <lain@soykaf.club>
2018-03-16 11:25:41 +01:00
William Pitcock 59a76ea464 activitypub transmogrifier: rewrite non-http URLs using the object's external URL
Signed-off-by: lain <lain@soykaf.club>
2018-03-14 08:53:29 +01:00
lain 368e085144 Don't validate on missing public key. 2018-03-11 14:47:37 +01:00
lain f29902a241 More signature debugging. 2018-03-11 14:37:23 +01:00
lain fcf1937a40 Correctly handle unlisted messages coming in through Ostatus. 2018-03-07 15:45:13 +01:00
lain b82637f32d Don't use special query for feed. 2018-03-06 16:04:29 +01:00
lain d2ad99298e Handle incoming deletes. 2018-03-03 18:38:40 +01:00
lain e9de04b74b Add support for outgoing update. 2018-02-25 21:08:32 +01:00
lain f61fd00db5 Make likes and announces public. 2018-02-25 18:20:06 +01:00
lain 8a47974217 Fix specs. 2018-02-25 18:11:03 +01:00
lain 4ea2a41014 Fix more specs. 2018-02-25 17:48:31 +01:00
lain d3b0167854 Fix salmon tests. 2018-02-25 17:06:12 +01:00
lain 8e7f63afde Fix specs. 2018-02-25 16:40:37 +01:00
lain e3629af4da Handle remote update activities. 2018-02-25 16:14:25 +01:00
lain b76de1ecd3 Some fixes to AP fetching. 2018-02-25 10:56:01 +01:00
lain e5fcc51a06 Remove unneccesary subscriptions on update. 2018-02-24 17:36:02 +01:00
lain fb02300234 Pleroma AP detection mechanism. 2018-02-24 13:06:53 +01:00
lain 01d5ef65fa More fixes to user upgrading. 2018-02-24 10:42:47 +01:00
lain aa79d64e0d Correctly stitch mastodon -> ostatus replies. 2018-02-23 15:00:41 +01:00
lain eb3f14da86 Missing test skeleton. 2018-02-23 08:49:57 +01:00
lain 37e406ae36 Get avatar and banner from AP users. 2018-02-22 08:14:15 +01:00
lain 4816b09fa7 Add user upgrade function. 2018-02-21 22:21:40 +01:00
lain 94db9ac4db Merge branch 'develop' into feature/activitypub 2018-02-21 18:34:19 +01:00
lain 810cf8618f ActivityPub: Fetch missing activities on reply. 2018-02-21 15:22:24 +01:00
lain 5bc810c452 Add moderator function. 2018-02-20 18:44:50 +01:00
lain 95f7e7e2d5 Add some more tests. 2018-02-20 18:42:41 +01:00
lain 297a2c7d3f Ignore duplicate create activities. 2018-02-19 17:37:45 +01:00
lain 6b6ab592ab AP: Fix incoming conversations. 2018-02-19 10:39:03 +01:00
lain 539340d914 Handle sensitive property. 2018-02-18 14:14:16 +01:00
lain 20e6190ead Transmogrify outgoing nsfw. 2018-02-18 14:07:13 +01:00
lain 8ca66b5961 ActivityPub: Add conversation id. 2018-02-18 13:58:52 +01:00
lain 6ab0aba50a Transmogrify outgoing hashtags. 2018-02-18 13:51:03 +01:00
lain 6046f10431 Actually fix incoming attachments. 2018-02-18 13:06:51 +01:00
lain 77c6c424a6 ActivityPub: Make fake Create activities for objects without one. 2018-02-18 11:24:54 +01:00
lain 81ea359a7c ActivityPub: Handle incoming announces. 2018-02-17 21:57:31 +01:00
lain 5e36b750c1 ActivityPub: Fetch an object from an id. 2018-02-17 21:56:33 +01:00
lain e1b12a7782 ActivityPub: Handle incoming likes. 2018-02-17 20:13:12 +01:00
lain e7b73359e3 ActivityPub: Partly handle incoming follows. 2018-02-17 14:55:44 +01:00
lain 5682e48a25 ActivityPub: tags -> tag. 2018-02-17 14:20:53 +01:00
lain 05ba6ca1b8 Do some transmogrifying for the output. 2018-02-17 14:11:20 +01:00
lain 5454ec6a6c ActivityPubController: Handle inbox data. 2018-02-15 20:00:43 +01:00
lain ef0300889d Transmogrifier: Handle basic notice creation. 2018-02-15 20:00:06 +01:00
lain a15f572800 OstatusTest: Remove insert_or_update test (moved to User). 2018-02-15 19:59:40 +01:00
lain ae26604378 ActivityPub: Refactor create function. 2018-02-15 19:59:35 +01:00
lain b331cb449a Merge branch 'develop' into feature/activitypub 2018-02-12 10:24:15 +01:00
lain 26ccb768d3 Make test output easier to read. 2018-02-12 10:14:11 +01:00
lain 33a5d0a238 Fix some test warnings. 2018-02-12 09:33:01 +01:00
lain 3c80d9b277 Fix spec. 2018-02-12 08:15:03 +01:00
lain 8cf97ee8e1 ActivityPub: Basic note federation with Mastodon. 2018-02-11 20:43:33 +01:00
lain ce31f3a922 Twitter Representers: Handle Mastodon attachments. 2018-02-11 17:21:06 +01:00
Roger Braun ae1ec858f4 Basic AP user building. 2018-02-11 17:20:43 +01:00
Roger Braun 52200998c9 Merge branch 'develop' into feature/activitypub 2018-02-11 09:50:55 +01:00
lambda 61c16193de Merge branch 'move-backend-images' into 'develop'
Move avi.png & banner.png from /priv/static/static to /priv/static/images

See merge request pleroma/pleroma!60
2018-02-03 13:05:20 +00:00
Hakaba Hitoyo ea6d1b2b17 move avi.png & banner.png from /priv/static/static to /priv/static/images 2018-02-03 20:43:14 +09:00
eal 29be70c008 Add remote following of local profiles. 2018-02-02 00:14:05 +02:00
eal ab83e0de6d TwitterAPI: Add is_local to user view. 2018-02-01 21:41:19 +02:00
Roger Braun ad0ab3a57b Merge branch 'hakabahitoyo/pleroma-feature/atom-feed-logo' into develop 2018-01-30 12:20:39 +01:00
Roger Braun 1bb3ba02f3 Fix specs. 2018-01-30 12:17:01 +01:00
eal b3e7d7ae6d Fetch external profile in the background. 2018-01-16 15:31:03 +02:00
eal 80f6ac412a Merge branch 'default-pictures' into 'develop'
Add a default profile picture and banner.

See merge request pleroma/pleroma!48
2018-01-15 20:26:49 +00:00
eal 14b086eec2 Add a default profile picture and banner.
This removes the placehold.it dependency.
2018-01-15 22:18:17 +02:00
eal 6e1cb86166 Fix instance test. 2018-01-14 08:28:35 +02:00
Lain Iwakura 2a744cdff8 Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into develop 2017-12-19 16:15:45 +01:00
Lain Iwakura f1f79c0dca Fix timelines in subway tooter. 2017-12-19 16:15:07 +01:00
lambda 29c9812789 Merge branch 'fix/twitterapi-follow-lists' into 'develop'
Fix follower/following lists.

Closes #29

See merge request pleroma/pleroma!41
2017-12-18 22:44:15 +00:00
Lain Iwakura 47887ac848 MastoAPI: Fix always-sensitive bugs. 2017-12-18 16:56:03 +01:00
eal 1969773fb4 Fix follower/following lists.
Add tests.
2017-12-18 16:37:26 +02:00
Lain Iwakura 4a13b84887 Add recipients field to activities.
Also do some very basic checks for AP message insertion.
2017-12-12 18:07:14 +01:00