Cannot get emojis to work
-
@majr please provide the full error. Include what resource it says timed out.
Do you have any errors in the server log?
Is your site public? I'd like to see what's going on.
-
-
@majr please check the url value in your
config.json
. It appears that you left the:4567
port at the end, while your site is not publicly at that port. The url value inconfig.json
should be set to exactly the URL at which you access your site:https://forum.eltern-team-up.de
-
Hello!
Sorry to intrude, but I have an issue with emojis too.
I can't get them to work since I tried adding new ones since my latest nodebb upgrade.I'm on nodebb v1.16.2
node v14.16.0I've had them working in the past without any issue.
Since I've updated to v1.16.2 everything was working fine then I tried adding some new emojis and from there the issue started.Once I added emojis as usual, I had this error
Failed to load emoji metadata
on the frontend and the backend.
I tried the 'Build Emoji Asset' button and a new errorCannot read property forEach of undefined
showed up.I had the latest
nodebb-plugin-emoji
plugin and thenodebb-plugin-emoji-android
activated.I did a
./nodebb build
and everything went fine but the issues were still there.I tried deactivating the plugins, deleting them and installing them again but the issue is still there.
I deleted the
nodebb-plugin-emoji-android
and tried thenodebb-plugin-emoji-apple
since the last one shows to be v1.16.2 compatible but nothing new happened here.When I run a
./nodebb log
I get this:error: [emoji] Failed to retrieve data for parse ENOENT: no such file or directory, open '/var/www/nodebb/node_modules/nodebb-plugin-emoji/build/emoji/table.json' {"errno":-2,"code":"ENOENT","syscall":"open","path":"/var/www/nodebb/node_modules/nodebb-plugin-emoji/build/emoji/table.json","stack":"Error: ENOENT: no such file or directory, open '/var/www/nodebb/node_modules/nodebb-plugin-emoji/build/emoji/table.json'"}
So it seems that I'm missing a
table.json
file but I have no clue where to find it. -
@taloche if Build Emoji Assets isn't working there's something weird going on. Do you have any custom emoji or extensions?
The issues your described are all related.
table.json
is the emoji metadata, it's produced when you build emoji assets. So the failure to build is causing the other issues.What version of those plugins are you on?
-
@pitaj hi! Thanks for the reply on a Saturday.
No custom emoji or plugin installed.
nodebb-plugin-emoji : 3.5.0-0
nodebb-plugin-emoji-apple : 2.0.5
I only had personal emojis added through the
nodebb-plugin-emoji
plugin with the pencil button.Other plugins installed, all up-to-date
nodebb-plugin-browsing-users
nodebb-plugin-custom-pages
nodebb-plugin-dbsearch
nodebb-plugin-composer-default
nodebb-plugin-embed
nodebb-plugin-featured-topics-extended
nodebb-plugin-imgur
nodebb-plugin-markdown
nodebb-plugin-mentions
nodebb-plugin-poll
nodebb-plugin-tenor-gif -
@taloche what database are you on?
-
@taloche alright can you give me the output of the following, executed in the mongo shell:
mongo > use <your nodebb database name> > db.objects.find({ _key:'emoji:customizations:emojis' }) > db.objects.find({ _key:'emoji:customizations:adjuncts' })
-
@pitaj said in Cannot get emojis to work:
db.objects.find({ _key:'emoji:customizations:emojis' })
{ "_id" : ObjectId("603a50a7a1600fa8ea4ebcb9"), "_key" : "emoji:customizations:emojis", "value" : "{\"name\":\"zlatan\",\"image\":\"78682101-8e02-479f-b9aa-254c05ec81b0-zlatan.gif\"}", "score" : 4107924063 } { "_id" : ObjectId("5f6f10a73bac327071ff4b98"), "_key" : "emoji:customizations:emojis", "value" : "{\"name\":\"volet\",\"image\":\"aa0b81cb-93af-4392-9c3a-11089e8773a7-volet.gif\",\"aliases\":[\"volet\"],\"ascii\":[\":volet:\"]}", "score" : 183096193 } { "_id" : ObjectId("603a51c3a1600fa8ea4ebe92"), "_key" : "emoji:customizations:emojis", "value" : "{\"name\":\"volet\",\"image\":\"69eb706a-4bce-4e92-9f59-49187bb3058c-volet.gif\"}", "score" : 4107924065 } { "_id" : ObjectId("5f6f0ed83bac327071ff478d"), "_key" : "emoji:customizations:emojis", "value" : "{\"name\":\"travolta\",\"image\":\"f1f1b840-d747-49ca-9915-6bfee7be9274-ezgif.com-resize(1).gif\",\"aliases\":[\"travolta\"],\"ascii\":[\":travolta:\"]}", "score" : 2013979170 } { "_id" : ObjectId("5ba8b070fba89e16361c51ce"), "_key" : "emoji:customizations:emojis", "value" : "{\"name\":\"tap\",\"image\":\"c7d9ce19-5479-4144-9eb8-c5762cb11d29-taptap.gif\",\"aliases\":[\"tap\"],\"ascii\":[\":tap:\"]}", "score" : 193426144 } { "_id" : ObjectId("5ba82060fba89e16361c50d5"), "_key" : "emoji:customizations:emojis", "value" : "{\"name\":\"sweat\",\"image\":\"89c94d76-333a-4cdd-bb73-71eb42792bcf-sweat.gif\",\"aliases\":[\"sweat\"],\"ascii\":[\":sweat:\"]}", "score" : 182959441 } { "_id" : ObjectId("5ba8b056fba89e16361c51cd"), "_key" : "emoji:customizations:emojis", "value" : "{\"name\":\"shit\",\"image\":\"a0f68a7c-ad32-41fe-b975-2c000f8f1d3d-shit.gif\",\"aliases\":[\"shit\"],\"ascii\":[\":shit:\"]}", "score" : 2087960707 } { "_id" : ObjectId("5ba8b040fba89e16361c51cc"), "_key" : "emoji:customizations:emojis", "value" : "{\"name\":\"score\",\"image\":\"9c4c85c6-835c-4932-aba5-e239ad432af8-score.gif\",\"aliases\":[\"score\"],\"ascii\":[\":score:\"]}", "score" : 165577581 } { "_id" : ObjectId("5ba820a8fba89e16361c50da"), "_key" : "emoji:customizations:emojis", "value" : "{\"name\":\"roll\",\"image\":\"e11c2a80-4b2d-4992-b861-17f9fe31a48b-roll.gif\",\"aliases\":[\"roll\"],\"ascii\":[\":roll:\"]}", "score" : 2087659768 } { "_id" : ObjectId("5ba8ab38fba89e16361c519f"), "_key" : "emoji:customizations:emojis", "value" : "{\"name\":\"rambo\",\"image\":\"569b3ce0-0246-4268-9563-ef8b26569ac5-rambo.gif\",\"aliases\":[\"rambo\"],\"ascii\":[\":rambo:\"]}", "score" : 181302582 } { "_id" : ObjectId("5ba8aff3fba89e16361c51cb"), "_key" : "emoji:customizations:emojis", "value" : "{\"name\":\"ragix\",\"image\":\"a607eb30-7eb4-4735-8cc8-9f685a158a28-ragix.gif\",\"aliases\":[\"ragix\"],\"ascii\":[\":ragix:\"]}", "score" : 196892672 } { "_id" : ObjectId("5ba8afd1fba89e16361c51ca"), "_key" : "emoji:customizations:emojis", "value" : "{\"name\":\"quoi\",\"image\":\"725413ba-e3d8-444b-8ab2-ce8625f77fca-quoi.gif\",\"aliases\":[\"quoi\"],\"ascii\":[\":quoi:\"]}", "score" : 2087834311 } { "_id" : ObjectId("5ba8afb3fba89e16361c51c9"), "_key" : "emoji:customizations:emojis", "value" : "{\"name\":\"prince\",\"image\":\"69ef238a-1c85-4fd8-81d0-eecb4f9f1d4a-prince.gif\",\"aliases\":[\"prince\"],\"ascii\":[\":prince:\"]}", "score" : 1158221606 } { "_id" : ObjectId("5ba8af8dfba89e16361c51c8"), "_key" : "emoji:customizations:emojis", "value" : "{\"name\":\"prefet\",\"image\":\"bb17e2b1-35ee-4453-8db9-9af89a998cae-prefet.gif\",\"aliases\":[\"prefet\"],\"ascii\":[\":prefet:\"]}", "score" : 1747141653 } { "_id" : ObjectId("5bd8d37efba89e16361c8ffa"), "_key" : "emoji:customizations:emojis", "value" : "{\"name\":\"poppop\",\"image\":\"81981a9f-0fc2-4e70-8710-6dc8b6242538-poppop.gif\",\"aliases\":[\"poppop\"],\"ascii\":[\":poppop:\"]}", "score" : 1900822949 } { "_id" : ObjectId("5ba8af70fba89e16361c51c7"), "_key" : "emoji:customizations:emojis", "value" : "{\"name\":\"police\",\"image\":\"f3715bf2-0e15-405e-b926-57512bad6dca-police.gif\",\"aliases\":[\"police\"],\"ascii\":[\":police:\"]}", "score" : 1158055545 } { "_id" : ObjectId("5ba8af56fba89e16361c51c6"), "_key" : "emoji:customizations:emojis", "value" : "{\"name\":\"passe\",\"image\":\"2652e883-9dd5-4d97-aeb6-29b2234f312d-passe.gif\",\"aliases\":[\"passe\"],\"ascii\":[\":passe:\"]}", "score" : 165785681 } { "_id" : ObjectId("5fbcd71e269ac9fb20789ebb"), "_key" : "emoji:customizations:emojis", "value" : "{\"name\":\"paf\",\"image\":\"c9d73d5d-7698-4998-bc97-e73903d5f842-paf.gif\",\"aliases\":[\"paf\"],\"ascii\":[\":paf:\"]}", "score" : 193410802 } { "_id" : ObjectId("5f6f0c3f3bac327071ff417e"), "_key" : "emoji:customizations:emojis", "value" : "{\"name\":\"oo\",\"image\":\"f34d71cc-7f29-45a4-808e-64d33b496616-OO.gif\",\"aliases\":[\"oo\"],\"ascii\":[\":oo:\"]}", "score" : 5861221 } { "_id" : ObjectId("5ba8af35fba89e16361c51c5"), "_key" : "emoji:customizations:emojis", "value" : "{\"name\":\"okay\",\"image\":\"d0771315-c0fa-4849-8620-51977faa691d-okay.gif\",\"aliases\":[\"okay\"],\"ascii\":[\":okay:\"]}", "score" : 2088415001 } Type "it" for more
db.objects.find({ _key:'emoji:customizations:adjuncts' })
Works but doesn't return anything.
-
@taloche running the following mongo command will rename the set
emoji:customizations:emojis
toemoji:customizations:emojis:bkp
, to essentially make it act as if you deleted the prior.db.objects.update({ _key:'emoji:customizations:emojis' }, { $set: { _key: 'emoji:customizations:emojis:bkp' } }, { multi: true })
Try running that then building emoji assets.
-
@pitaj said in Cannot get emojis to work:
db.objects.update({ _key:'emoji:customizations:emojis' }, { $set: { _key: 'emoji:customizations:emojis:bkp' } }, { multi: true })
Thanks a lot @PitaJ.
As promised the "Build Emoji Asset" works again.I tried playing around with it again and managed to get the errors back again.
It seems that if you by accident hit the "check" at the end of the line before putting the "ASCII patterns" it messes up the line and the errors are back.But after a fresh install of everything I can't reproduce these errors.
Thanks again!
EDIT: it seems that if you leave a character in an empty line added by mistake at the end, for example, the errors are back if you save then build.
-
@taloche I'm having trouble understanding what you mean. Could you give an example? I'd like to implement a validation step to prevent that if possible.
-
@pitaj sorry!
For instance, on a first line, you enter a name, then upload an gif, then type the alias, hit the '+' button to validate the alias, then you type the ASCII Pattern but there instead of hitting the '+' button to validate the ASCII Pattern, you hit the Green check button at the end of the line, your ASCII Pattern is moved to a new (empty) line.
So this
Gives you this
And if you save and build this by mistake because, like me, you're not paying too much attention, you get the errors I got.
I hope you appreciate the artistic efforts to illustrate the issue.
-
@PitaJ Sorry to bother you again, but is there any chance there's a workaround where we could use the emoji-plugin without having to use another emoji pack like the apple, android, etc... ones?
I only like to use on our forum, our gifs and homemade smilies.On the frontend with CSS, I hide the toolip bar in the simlies window so only our gifs show up but when you use the search bar you end up seeing the other emoji pack.
If I remember correctly you had made that possible with the oldnodebb-plugin-emoji-extended
-
@taloche have you tried just disabling all of the packs? I just tried that and it seemed to work, showing only the custom emoji.
-
@taloche thanks for the example. Like you, I wasn't able to reproduce the issue unfortunately.
-
@pitaj I believe that's what I did before the upgrade. The emoji-android pack was disabled.
Have you tried to add a new emoji now that you've disabled the pack?
I've just entered our 156 personal emojis, now that it's working again, I'm a bit afraid to play with it.
After your help, I managed to get the errors again on 3 occassions, but once it was working I didn't manage to reproduce it.
I guess that with the clean slate you gave me, I did the plugin adding, build asset, nodebb build in the correct order. -
@PitaJ seems to work. Disabled the emoji-pack. Did a
./nodebb build
after stopping nodebb. I was able to add a new emoji, then hit the 'build asset' button. Stopped nodebb again, did another./nodebb build
, went back to the emoji panel, no issues, no errors.
Thanks again for the help, sorry I wasn't able to find what went wrong.