🔥 [Foro.Agency] Real-time Shoutbox (NodeJS & Socket.IO)

🔥 [Foro.Agency] Real-time Shoutbox (NodeJS & Socket.IO) [Paid] 1.1.2

No permission to buy (€9.00)

[F.A] Walky

Active member
I can't get archiving to work. I have set the option, I issued a /prune command but my existing thread is not updated. Or am I misunderstanding the instructions and that archiving will only archive at cron run (even if shoutbox is pruned)?)

Also leaderboard is missing avatar pics (using generic question marks).
This is designed like this. Only the cron run archive messages (not the prune command).

I will see what’s wrong with leaderboard avatar, thanks for the report :)
 

ichpen

Well-known member
This is designed like this. Only the cron run archive messages (not the prune command).

I will see what’s wrong with leaderboard avatar, thanks for the report :)
So your cron job failed with the following error. Also thread was not updated with Shoutbox content. What user are you setting for that cron and post?


Server error log
  • InvalidArgumentException: Attempted to convert NULL to string/binary [username]
  • src/XF/Mvc/Entity/Entity.php:697
  • Generated by: Unknown account
  • Dec 29, 2018 at 8:00 PM
Stack trace
#0 src/XF/Mvc/Entity/Entity.php(575): XF\Mvc\Entity\Entity->_castValueToType(NULL, 'username', 5, Array)
#1 src/XF/Mvc/Entity/Entity.php(505): XF\Mvc\Entity\Entity->set('username', NULL)
#2 src/XF/Service/Thread/Replier.php(102): XF\Mvc\Entity\Entity->__set('username', NULL)
#3 src/XF/Service/Thread/Replier.php(40): XF\Service\Thread\Replier->setPostDefaults()
#4 src/XF/Container.php(274): XF\Service\Thread\Replier->__construct(Object(XF\Pub\App), Object(ForumApps\API\XF\Entity\Thread))
#5 src/XF/App.php(1362): XF\Container->createObject('XF\\Service\\Thre...', Array)
#6 src/XF/Container.php(228): XF\App->XF\{closure}('XF\\Service\\Thre...', Array, Object(XF\Container))
#7 src/XF/App.php(2511): XF\Container->create('service', 'XF:Thread\\Repli...', Array)
#8 src/addons/ForoAgency/Shoutbox/Repository/Messages.php(70): XF\App->service('XF:Thread\\Repli...', Object(ForumApps\API\XF\Entity\Thread))
#9 src/addons/ForoAgency/Shoutbox/Cron/Archive.php(12): ForoAgency\Shoutbox\Repository\Messages->archiveMessages()
#10 [internal function]: ForoAgency\Shoutbox\Cron\Archive::archiveMessages(Object(XF\Entity\CronEntry))
#11 src/XF/Job/Cron.php(35): call_user_func(Array, Object(XF\Entity\CronEntry))
#12 src/XF/Job/Manager.php(241): XF\Job\Cron->run(G)
#13 src/XF/Job/Manager.php(187): XF\Job\Manager->runJobInternal(Array, G)
#14 src/XF/Job/Manager.php(76): XF\Job\Manager->runJobEntry(Array, G)
#15 job.php(14): XF\Job\Manager->runQueue(false, 8)
#16 {main}

-------------

Previous InvalidArgumentException: Attempted to convert NULL to string/binary - src/XF/Mvc/Entity/ValueFormatter.php:130
#0 src/XF/Mvc/Entity/Entity.php(693): XF\Mvc\Entity\ValueFormatter->castValueToType(NULL, 5, Array)
#1 src/XF/Mvc/Entity/Entity.php(575): XF\Mvc\Entity\Entity->_castValueToType(NULL, 'username', 5, Array)
#2 src/XF/Mvc/Entity/Entity.php(505): XF\Mvc\Entity\Entity->set('username', NULL)
#3 src/XF/Service/Thread/Replier.php(102): XF\Mvc\Entity\Entity->__set('username', NULL)
#4 src/XF/Service/Thread/Replier.php(40): XF\Service\Thread\Replier->setPostDefaults()
#5 src/XF/Container.php(274): XF\Service\Thread\Replier->__construct(Object(XF\Pub\App), Object(ForumApps\API\XF\Entity\Thread))
#6 src/XF/App.php(1362): XF\Container->createObject('XF\\Service\\Thre...', Array)
#7 src/XF/Container.php(228): XF\App->XF\{closure}('XF\\Service\\Thre...', Array, Object(XF\Container))
#8 src/XF/App.php(2511): XF\Container->create('service', 'XF:Thread\\Repli...', Array)
#9 src/addons/ForoAgency/Shoutbox/Repository/Messages.php(70): XF\App->service('XF:Thread\\Repli...', Object(ForumApps\API\XF\Entity\Thread))
#10 src/addons/ForoAgency/Shoutbox/Cron/Archive.php(12): ForoAgency\Shoutbox\Repository\Messages->archiveMessages()
#11 [internal function]: ForoAgency\Shoutbox\Cron\Archive::archiveMessages(Object(XF\Entity\CronEntry))
#12 src/XF/Job/Cron.php(35): call_user_func(Array, Object(XF\Entity\CronEntry))
#13 src/XF/Job/Manager.php(241): XF\Job\Cron->run(G)
#14 src/XF/Job/Manager.php(187): XF\Job\Manager->runJobInternal(Array, G)
#15 src/XF/Job/Manager.php(76): XF\Job\Manager->runJobEntry(Array, G)
#16 job.php(14): XF\Job\Manager->runQueue(false, 8)
#17 {main}
Request state
array(4) {
["url"] => string(8) "/job.php"
["referrer"] => string(58) "https://mysite.com/whats-new/posts/648464/"
["_GET"] => array(0) {
}
["_POST"] => array(0) {
}
}
 

[F.A] Walky

Active member
So your cron job failed with the following error. Also thread was not updated with Shoutbox content. What user are you setting for that cron and post?


Server error log
  • InvalidArgumentException: Attempted to convert NULL to string/binary [username]
  • src/XF/Mvc/Entity/Entity.php:697
  • Generated by: Unknown account
  • Dec 29, 2018 at 8:00 PM
Stack trace
#0 src/XF/Mvc/Entity/Entity.php(575): XF\Mvc\Entity\Entity->_castValueToType(NULL, 'username', 5, Array)
#1 src/XF/Mvc/Entity/Entity.php(505): XF\Mvc\Entity\Entity->set('username', NULL)
#2 src/XF/Service/Thread/Replier.php(102): XF\Mvc\Entity\Entity->__set('username', NULL)
#3 src/XF/Service/Thread/Replier.php(40): XF\Service\Thread\Replier->setPostDefaults()
#4 src/XF/Container.php(274): XF\Service\Thread\Replier->__construct(Object(XF\Pub\App), Object(ForumApps\API\XF\Entity\Thread))
#5 src/XF/App.php(1362): XF\Container->createObject('XF\\Service\\Thre...', Array)
#6 src/XF/Container.php(228): XF\App->XF\{closure}('XF\\Service\\Thre...', Array, Object(XF\Container))
#7 src/XF/App.php(2511): XF\Container->create('service', 'XF:Thread\\Repli...', Array)
#8 src/addons/ForoAgency/Shoutbox/Repository/Messages.php(70): XF\App->service('XF:Thread\\Repli...', Object(ForumApps\API\XF\Entity\Thread))
#9 src/addons/ForoAgency/Shoutbox/Cron/Archive.php(12): ForoAgency\Shoutbox\Repository\Messages->archiveMessages()
#10 [internal function]: ForoAgency\Shoutbox\Cron\Archive::archiveMessages(Object(XF\Entity\CronEntry))
#11 src/XF/Job/Cron.php(35): call_user_func(Array, Object(XF\Entity\CronEntry))
#12 src/XF/Job/Manager.php(241): XF\Job\Cron->run(G)
#13 src/XF/Job/Manager.php(187): XF\Job\Manager->runJobInternal(Array, G)
#14 src/XF/Job/Manager.php(76): XF\Job\Manager->runJobEntry(Array, G)
#15 job.php(14): XF\Job\Manager->runQueue(false, 8)
#16 {main}

-------------

Previous InvalidArgumentException: Attempted to convert NULL to string/binary - src/XF/Mvc/Entity/ValueFormatter.php:130
#0 src/XF/Mvc/Entity/Entity.php(693): XF\Mvc\Entity\ValueFormatter->castValueToType(NULL, 5, Array)
#1 src/XF/Mvc/Entity/Entity.php(575): XF\Mvc\Entity\Entity->_castValueToType(NULL, 'username', 5, Array)
#2 src/XF/Mvc/Entity/Entity.php(505): XF\Mvc\Entity\Entity->set('username', NULL)
#3 src/XF/Service/Thread/Replier.php(102): XF\Mvc\Entity\Entity->__set('username', NULL)
#4 src/XF/Service/Thread/Replier.php(40): XF\Service\Thread\Replier->setPostDefaults()
#5 src/XF/Container.php(274): XF\Service\Thread\Replier->__construct(Object(XF\Pub\App), Object(ForumApps\API\XF\Entity\Thread))
#6 src/XF/App.php(1362): XF\Container->createObject('XF\\Service\\Thre...', Array)
#7 src/XF/Container.php(228): XF\App->XF\{closure}('XF\\Service\\Thre...', Array, Object(XF\Container))
#8 src/XF/App.php(2511): XF\Container->create('service', 'XF:Thread\\Repli...', Array)
#9 src/addons/ForoAgency/Shoutbox/Repository/Messages.php(70): XF\App->service('XF:Thread\\Repli...', Object(ForumApps\API\XF\Entity\Thread))
#10 src/addons/ForoAgency/Shoutbox/Cron/Archive.php(12): ForoAgency\Shoutbox\Repository\Messages->archiveMessages()
#11 [internal function]: ForoAgency\Shoutbox\Cron\Archive::archiveMessages(Object(XF\Entity\CronEntry))
#12 src/XF/Job/Cron.php(35): call_user_func(Array, Object(XF\Entity\CronEntry))
#13 src/XF/Job/Manager.php(241): XF\Job\Cron->run(G)
#14 src/XF/Job/Manager.php(187): XF\Job\Manager->runJobInternal(Array, G)
#15 src/XF/Job/Manager.php(76): XF\Job\Manager->runJobEntry(Array, G)
#16 job.php(14): XF\Job\Manager->runQueue(false, 8)
#17 {main}
Request state
array(4) {
["url"] => string(8) "/job.php"
["referrer"] => string(58) "https://mysite.com/whats-new/posts/648464/"
["_GET"] => array(0) {
}
["_POST"] => array(0) {
}
}
I'm not setting any specific user, that's probably the problem.
I'll fix this as soon as possible, thanks for the report :)
 

ichpen

Well-known member
You have to update both :)
The fix does not work. Getting an identical error as above for the cron job and user ID was set correctly.


Server error log
  • InvalidArgumentException: Attempted to convert NULL to string/binary [username]
  • src/XF/Mvc/Entity/Entity.php:697
  • Generated by: Unknown account
  • Jan 1, 2019 at 8:01 PM
Stack trace
#0 src/XF/Mvc/Entity/Entity.php(575): XF\Mvc\Entity\Entity->_castValueToType(NULL, 'username', 5, Array)
#1 src/XF/Mvc/Entity/Entity.php(505): XF\Mvc\Entity\Entity->set('username', NULL)
#2 src/XF/Service/Thread/Replier.php(102): XF\Mvc\Entity\Entity->__set('username', NULL)
#3 src/XF/Service/Thread/Replier.php(40): XF\Service\Thread\Replier->setPostDefaults()
#4 src/XF/Container.php(274): XF\Service\Thread\Replier->__construct(Object(XF\Pub\App), Object(ForumApps\API\XF\Entity\Thread))
#5 src/XF/App.php(1362): XF\Container->createObject('ForoAgency\\Shou...', Array)
#6 src/XF/Container.php(228): XF\App->XF\{closure}('ForoAgency\\Shou...', Array, Object(XF\Container))
#7 src/XF/App.php(2511): XF\Container->create('service', 'XF:Thread\\Repli...', Array)
#8 src/addons/ForoAgency/Shoutbox/Repository/Messages.php(72): XF\App->service('XF:Thread\\Repli...', Object(ForumApps\API\XF\Entity\Thread))
#9 src/addons/ForoAgency/Shoutbox/Cron/Archive.php(12): ForoAgency\Shoutbox\Repository\Messages->archiveMessages()
#10 [internal function]: ForoAgency\Shoutbox\Cron\Archive::archiveMessages(Object(XF\Entity\CronEntry))
#11 src/XF/Job/Cron.php(35): call_user_func(Array, Object(XF\Entity\CronEntry))
#12 src/XF/Job/Manager.php(241): XF\Job\Cron->run(G)
#13 src/XF/Job/Manager.php(187): XF\Job\Manager->runJobInternal(Array, G)
#14 src/XF/Job/Manager.php(76): XF\Job\Manager->runJobEntry(Array, G)
#15 job.php(14): XF\Job\Manager->runQueue(false, 8)
#16 {main}

-------------

Previous InvalidArgumentException: Attempted to convert NULL to string/binary - src/XF/Mvc/Entity/ValueFormatter.php:130
#0 src/XF/Mvc/Entity/Entity.php(693): XF\Mvc\Entity\ValueFormatter->castValueToType(NULL, 5, Array)
#1 src/XF/Mvc/Entity/Entity.php(575): XF\Mvc\Entity\Entity->_castValueToType(NULL, 'username', 5, Array)
#2 src/XF/Mvc/Entity/Entity.php(505): XF\Mvc\Entity\Entity->set('username', NULL)
#3 src/XF/Service/Thread/Replier.php(102): XF\Mvc\Entity\Entity->__set('username', NULL)
#4 src/XF/Service/Thread/Replier.php(40): XF\Service\Thread\Replier->setPostDefaults()
#5 src/XF/Container.php(274): XF\Service\Thread\Replier->__construct(Object(XF\Pub\App), Object(ForumApps\API\XF\Entity\Thread))
#6 src/XF/App.php(1362): XF\Container->createObject('ForoAgency\\Shou...', Array)
#7 src/XF/Container.php(228): XF\App->XF\{closure}('ForoAgency\\Shou...', Array, Object(XF\Container))
#8 src/XF/App.php(2511): XF\Container->create('service', 'XF:Thread\\Repli...', Array)
#9 src/addons/ForoAgency/Shoutbox/Repository/Messages.php(72): XF\App->service('XF:Thread\\Repli...', Object(ForumApps\API\XF\Entity\Thread))
#10 src/addons/ForoAgency/Shoutbox/Cron/Archive.php(12): ForoAgency\Shoutbox\Repository\Messages->archiveMessages()
#11 [internal function]: ForoAgency\Shoutbox\Cron\Archive::archiveMessages(Object(XF\Entity\CronEntry))
#12 src/XF/Job/Cron.php(35): call_user_func(Array, Object(XF\Entity\CronEntry))
#13 src/XF/Job/Manager.php(241): XF\Job\Cron->run(G)
#14 src/XF/Job/Manager.php(187): XF\Job\Manager->runJobInternal(Array, G)
#15 src/XF/Job/Manager.php(76): XF\Job\Manager->runJobEntry(Array, G)
#16 job.php(14): XF\Job\Manager->runQueue(false, 8)
#17 {main}

Request state
array(4) {
["url"] => string(8) "/job.php"
["referrer"] => string(58) "https://mysite.com/whats-new/posts/663258/"
["_GET"] => array(0) {
}
["_POST"] => array(0) {
}
}
 

[F.A] Walky

Active member
The fix does not work. Getting an identical error as above for the cron job and user ID was set correctly.
I'm currently checking what could be wrong with this part, I will get back to you soon :)
You can disable the option for the moment if you don't want any more errors in your ACP.
 

ichpen

Well-known member
I'm currently checking what could be wrong with this part, I will get back to you soon :)
You can disable the option for the moment if you don't want any more errors in your ACP.
Please do, thanks.

Another UX glitch. The Author is prefixed by @ (or I assume your chosen mention symbol) which makes things very confusing because you get things like [avatar]date @Author: @mention1 @mention2 some message which looks wrong. Suggestion, please remove leading (@ from author field. Leave the mentions as user selectable for actual mentions.

One more suggestion would be some sort of new message transition or highlighting (some fade in or brief background highlight of new message) as it's very easy to miss new messages in its current format.
 
Last edited:

[F.A] Walky

Active member
Another UX glitch. The Author is prefixed by @ (or I assume your chosen mention symbol) which makes things very confusing because you get things like [avatar]date @Author: @mention1 @mention2 some message which looks wrong. Suggestion, please remove leading (@ from author field. Leave the mentions as user selectable for actual mentions.
Hello,

The author field is not prefixed by any '@' (http://prntscr.com/m3njjz), it would be this case only if you chose the '@' symbol for tagging. Even with this symbol chosen, the difference is quite visible.

One more suggestion would be some sort of new message transition or highlighting (some fade in or brief background highlight of new message) as it's very easy to miss new messages in its current format.
You may be right on this point, I'll try some effects and see which one sounds best. :)

Regards,
Walky
 

ichpen

Well-known member
Hello,

The author field is not prefixed by any '@' (http://prntscr.com/m3njjz), it would be this case only if you chose the '@' symbol for tagging. Even with this symbol chosen, the difference is quite visible.


You may be right on this point, I'll try some effects and see which one sounds best. :)

Regards,
Walky
Actually author difference in my case is non existent as I have some user group colors that match my tag colors so it all looks the same. From a usability perspective I still maintain that author field should not be prefixed by anything which aligns with XF UX standards. Afterall the author is not tagging him or herself so why add the tag prefix. It seems confusing.

Happy to see the new msg transitions if you can make them work.
 

Betclever

Active member
I'm not able to install this plugin.

Where can I find HTTPS/SSL info because on Cpanel, I can see the path which is public_html but nothing else?
What about Cloudfare even if I don't use it? Do I need to block some ports?

"npm install" returns an error even if I'm on the good directory which is /server as explained.

Thanks for your help.
 

[F.A] Walky

Active member
Hello @Betclever,

Where can I find HTTPS/SSL info because on Cpanel, I can see the path which is public_html but nothing else?
Info concerning your SSL certificate are provided by your host, you must have the key and the certificate file. If you don’t find them, try to contact your host.

What about Cloudfare even if I don't use it? Do I need to block some ports?
If you do not use CloudFlare you can use whatever port you want, unless your server blocks specific ports.

What error did you get running npm install ?

Regards,
Walky
 

Betclever

Active member

Betclever

Active member
Installation => nightmare.

Coder tried to help remotely but took more than 1 hour for solving one of the bug and tell me it is the theme...

That's easy...

I use one of the most used theme on XF2, not normal and seller doesn't want to refund and it is the first time I'm facing this kind of issue and I hired a few coders from here and one of them is actually working on my website...

The price is okay but the plugin is minimalist and you have to pay extra fees for the smilies.

I filed a dispute on Paypal for this.
 

[F.A] Walky

Active member
Installation => nightmare.

Coder tried to help remotely but took more than 1 hour for solving one of the bug and tell me it is the theme...

That's easy...

I use one of the most used theme on XF2, not normal and seller doesn't want to refund and it is the first time I'm facing this kind of issue and I hired a few coders from here and one of them is actually working on my website...

The price is okay but the plugin is minimalist and you have to pay extra fees for the smilies.

I filed a dispute on Paypal for this.
Hello,

As I told you many many times, the problem comes from your custom theme which removes/adds new design and it doesn't match with the Shoutbox, you're right.
However, it works perfectly on XenForo basic theme. It doesn't matter if you're using "one of the most used theme", as long as it works on default theme. I just can't edit the Shoutbox to work with every available themes...

Furthermore, I tried to help you getting over this issue with your theme. You didn't even try to fix this, I can't do anything more to help you on this if you don't listen to me !

By the way, when you purchase the addon, I assume you read the whole description and saw all the screens. I'm not hiding, I know the plugin is very minimalist. Plus, on the first lines of the description you can read that there's an available custom installation for extra charges which you don't pay for.

Regards,
Walky
 

Betclever

Active member
on the first lines of the description you can read that there's an available custom installation for extra charges which you don't pay for.
I installed/configured the plugin... Do I need to pay for solving bugs on your own plugin? Come on...
I mean, you tried remotely to solve an issue which is on your own plugin by changing some lines of your own code (php/json).

Furthermore, I tried to help you getting over this issue with your theme. You didn't even try to fix this, I can't do anything more to help you on this if you don't listen to me !
Listen?

I'm always open for a discussion but you did not try to help me, you just told me the main issue is my "custom theme".

I stop here.
Paypal will take the decision but I will never pay for a plugin I'm not able to use!
 

[F.A] Walky

Active member
I installed/configured the plugin... Do I need to pay for solving bugs on your own plugin? Come on...
I mean, you tried remotely to solve an issue which is on your own plugin by changing some lines of your own code (php/json).
The Shoutbox works perfectly, switch to the default theme then you will see no issue. “Custom installation” is part of the process, if you have a custom theme that make the plugin doesn’t work as you want then I can’t do anything about it.. just remove them or edit them (like I told you on DM on my website btw)

What I was doing was not even to fix design issues, it was just to make the server on for you. (which btw is “custom installation” because I had to take control, that was a kind move from me but okay).
 
Top