Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

step by step? #2

Open
tfraley opened this issue May 7, 2015 · 38 comments
Open

step by step? #2

tfraley opened this issue May 7, 2015 · 38 comments

Comments

@tfraley
Copy link

tfraley commented May 7, 2015

Any step by step docs to get this going?

@ibeardslee
Copy link

I couldn't find any, but it worked out pretty simple ..

  • clone the repo
  • replace the image files with your branding
  • tweak manifest.json ('name', 'description', 'version' and change 'matches' to reflect your details)
  • used the documentation here https://developer.chrome.com/extensions/packaging to create the .crx file

Note because of Chromium's (and Chrome's) security you still need to manually install the extension or work on getting it added to the Chrome Store (which we haven't done).

@tfraley
Copy link
Author

tfraley commented May 7, 2015

Thank you for that,

I have never put a chrome extenstion up in the store before.

I do have one question though

In the manifest.json file

Where we edit the url filter

I use a port at the end of my url
https://hangout.example.net:44300

Will this match still work

"externally_connectable": {
"matches": [
"://hangout.extention.net/"
]
}

I've tried some other varations and it showed errors.

@ibeardslee
Copy link

Try this as your match ...
"://hangout.extention.net/"

Not sure about the port, my initial guess would be not needed. Try it without the port, if that doesn't work then try it with the port, if that still doesn't work then get rid of the idea of using a non-standard port ;). Would probably need to be this match if you needed the port.
"://hangout.extention.net:44300/"

@tfraley
Copy link
Author

tfraley commented May 7, 2015

That was the first thing I tried.
Which is what kicked back an error. I think it's looking for a specific format and didn't like the port like that.

I just left the office may mess around with it remotely later or just pick it up in the AM

Also note: their are asterix's in their not sure but think github pulled them out

"asterix://hangout.extention.net:44300/asterix"

@ibeardslee
Copy link

ahh .. ok yeah

@tfraley
Copy link
Author

tfraley commented May 7, 2015

Basically, Whne sing the following "asterix://hangout.extention.net/asterix"

I created the CRX file.
While on page https://hangout.extention.net:44300
I try and install the extension.
Drag and drop to chrome then click ok

I get an error saying apps. Extensions, and user scripts cannot be added from this website.

So i'm at a loss for tonight.
Tomorrow will be a better day.

Thanks for checking back and the fast replies

@ibeardslee
Copy link

Drag and drop directly into chrome://extensions/

@tfraley
Copy link
Author

tfraley commented May 8, 2015

well that cleared that up..
Guess you can tell how much I manually install chrome extensions

Still have to mess with that port and try to get it to work right tomarrow.
Thanks again

@tfraley
Copy link
Author

tfraley commented May 8, 2015

ok,

Here is the error while trying to Pack.

Pack Extension Error
Invalid match pattern "://hangout.extention.net:44300/"

@tfraley
Copy link
Author

tfraley commented May 8, 2015

FYI it removed the asterix's again seems github comments don't like them

"asterix://hangout.extention.net:44300/asterix"

@ibeardslee
Copy link

yeap .. try without port :44300

@tfraley
Copy link
Author

tfraley commented May 8, 2015

Ok, seems it will compile the extension without the first asterix ie.. "https://hangout.extention.net:44300/asterix"

With that being said drag and drop the extension to chrome extensions install fine.
When I go to my page http://hangout.extention.net:44300/channel
Then click the screensharing button I get the following error

Error
Failed to install desktop sharing extension

FYI: just tried without the 44300 as well compiles but get same error when I goto the website

@ibeardslee
Copy link

go to https://hangout.extention.net:44300/channel .. httpS as you have in your extension

@tfraley
Copy link
Author

tfraley commented May 8, 2015

Sorry that was a type O I was going to https:

@ibeardslee
Copy link

So the failed to install the desktop sharing extension message is because it can't find an enabled extension to install for the jitsi meet server. Which would mean that the extension either not configured correctly for the correct server, not enabled or 'something else'.
What other changes to the manifest.json file did you make? .. .. and I realise I had mentioned manifests.js file in my first reply when I did actually mean manifest.json .. will change that now.

@tfraley
Copy link
Author

tfraley commented May 8, 2015

not much just the name and the verison number

{
"manifest_version": 2,
"name": "LifewithTech Desktop Streamer",
"description": "A simple extension that allows you to stream your desktop into meetings",
"version": "0.2.1",
"minimum_chrome_version": "34",
"icons": {
"16": "jitsi-logo-16x16.png",
"48": "jitsi-logo-48x48.png",
"128": "jitsi-logo-128x128.png"
},
"background": {
"scripts": [ "background.js" ],
"persistent": true
},
"permissions": [
"desktopCapture"
],
"externally_connectable": {
"matches": [
"https://hangout.extention.net:44300/*"
]
}
}

@tfraley
Copy link
Author

tfraley commented May 8, 2015

The server can be reached at https://hangout.lifewithtech.net:44300/
Extention can be grabbed from my dropbox https://www.dropbox.com/s/rcm3ywwnowsequw/jidesha-master.crx?dl=0 its with the port

@ibeardslee
Copy link

ok, so I had a play and not having much luck, changed the match and was working with reloading the unpacked extension .. even tried asterisk:hangout.lifewithtech.net:asterisk/asterisk. I think the next step is to tail the logs on the server to see if there is anything that is obviously failing.

sudo -s
tail -f /var/log/nginx/.log /var/log/jitsi/j.log

note depending on your installation logs maybe in different locations.

@tfraley
Copy link
Author

tfraley commented May 8, 2015

OK did a tail, while open I did
Went to http://hangout.lifewithtech.net
put in a room name "lifewithtech"
then clicked the screenshare button

this is the output of the tail.
In case comments mess it up I've put it in a text file as well
https://www.dropbox.com/s/3uw9gzhs84pnf2n/Log.txt?dl=0

root@hangout:/var/log/jitsi# tail -f /var/log/nginx/error.log /var/log/jitsi/jicofo.log
==> /var/log/nginx/error.log <==
2015/05/02 09:12:09 [notice] 5885#0: signal process started
2015/05/04 15:28:06 [notice] 1142#0: signal process started
2015/05/04 15:28:07 [notice] 1201#0: signal process started
2015/05/04 15:33:29 [notice] 2225#0: signal process started
2015/05/07 12:59:02 [error] 683#0: *14576 connect() failed (111: Connection refused) while connecting to upstream, client: 192.168.70.1, server: hangout.lifewithtech.net, request: "POST /http-bind HTTP/1.1", upstream: "http://127.0.0.1:5280/http-bind", host: "hangout.lifewithtech.net:44300", referrer: "https://hangout.lifewithtech.net:44300/lifewithtech"

==> /var/log/jitsi/jicofo.log <==
Caused by: SASL authentication DIGEST-MD5 failed: text:
at org.jivesoftware.smack.SASLAuthentication.authenticate(SASLAuthentication.java:341)
at org.jivesoftware.smack.XMPPConnection.login(XMPPConnection.java:208)
at org.jitsi.impl.protocol.xmpp.XmppProtocolProvider.register(XmppProtocolProvider.java:156)
... 1 more
2015-04-07 19:26:46.208 INFO: [18] org.jitsi.jicofo.FocusManager.expireLoop().488 Focus idle timeout for [email protected]
2015-04-07 19:26:46.208 INFO: [18] org.jitsi.impl.protocol.xmpp.OperationSetColibriConferenceImpl.expireConference().411 Nothing to expire - no conference allocated yet
2015-04-07 19:26:46.209 SEVERE: [18] org.jitsi.jicofo.JitsiMeetConference.leaveTheRoom().381 Chat room already left!
2015-04-07 19:26:46.359 INFO: [18] org.jitsi.impl.protocol.xmpp.XmppProtocolProvider.info() XMPP provider Jabber:[email protected]/focus270399965944808@localhost disconnected
2015-04-07 19:26:46.360 INFO: [18] org.jitsi.jicofo.FocusManager.conferenceEnded().277 Disposed conference for room: [email protected] conference count: 0
2015-04-08 07:15:12.275 INFO: [256] org.jitsi.jicofo.xmpp.FocusComponent.handleConferenceIq().370 Focus request for room: [email protected]
2015-04-08 07:15:12.275 INFO: [256] org.jitsi.jicofo.FocusManager.createConference().231 Created new focus for lifewithtech@conference.hangout.lifewithtech.net@auth.hangout.lifewithtech.net conferences count: 1 options:
channelLastN: -1
adaptiveLastN: false
adaptiveSimulcast: false
bridge: jitsi-videobridge.hangout.lifewithtech.net
openSctp: true
2015-04-08 07:15:12.367 SEVERE: [257] org.jitsi.jicofo.util.RegisterThread.run().42 net.java.sip.communicator.service.protocol.OperationFailedException: Failed to connect
net.java.sip.communicator.service.protocol.OperationFailedException: Failed to connect
at org.jitsi.impl.protocol.xmpp.XmppProtocolProvider.register(XmppProtocolProvider.java:161)
at org.jitsi.jicofo.util.RegisterThread.run(RegisterThread.java:38)
Caused by: SASL authentication DIGEST-MD5 failed: text:
at org.jivesoftware.smack.SASLAuthentication.authenticate(SASLAuthentication.java:341)
at org.jivesoftware.smack.XMPPConnection.login(XMPPConnection.java:208)
at org.jitsi.impl.protocol.xmpp.XmppProtocolProvider.register(XmppProtocolProvider.java:156)
... 1 more
2015-04-08 07:15:32.261 INFO: [18] org.jitsi.jicofo.FocusManager.expireLoop().488 Focus idle timeout for [email protected]
2015-04-08 07:15:32.261 INFO: [18] org.jitsi.impl.protocol.xmpp.OperationSetColibriConferenceImpl.expireConference().411 Nothing to expire - no conference allocated yet
2015-04-08 07:15:32.261 SEVERE: [18] org.jitsi.jicofo.JitsiMeetConference.leaveTheRoom().381 Chat room already left!
2015-04-08 07:15:32.412 INFO: [18] org.jitsi.impl.protocol.xmpp.XmppProtocolProvider.info() XMPP provider Jabber:[email protected]/focus312924581474521@localhost disconnected
2015-04-08 07:15:32.412 INFO: [18] org.jitsi.jicofo.FocusManager.conferenceEnded().277 Disposed conference for room: [email protected] conference count: 0

@tfraley
Copy link
Author

tfraley commented May 13, 2015

@ibeardslee
Any thoughts on what to try next?

@paweldomas
Copy link
Member

Error "SASL authentication DIGEST-MD5 failed: text:" means that invalid password is configured for jicofo user.

@tfraley
Copy link
Author

tfraley commented May 13, 2015

@paweldomas
Thanks.. Yha I was confused setting up the config, becasue of the subdomain stuff. I thought it was working correctly guess something is messed up in their

@tfraley
Copy link
Author

tfraley commented May 13, 2015

@paweldomas
Actually, after looking at the config again, it seems I commented out all my old changes it should of been default settings. When I ran those logs

@tfraley
Copy link
Author

tfraley commented May 13, 2015

@paweldomas @ibeardslee

Reiterate
External domain hangout.lifewithtech.net
Internal domain hangout.homeip.net
Port forwards 443, 5347, 5280, 5222 & 10000 - 20000

configuration(etc\prosody\prosody.cfg.lua):

VirtualHost "auth.jitsi.example.com"
*************Should this be “[email protected]” or “[email protected]
authentication = "internal_plain"

sudo prosodyctl register focus auth.jitsi.example.com focuspassword
*************Should this be sudo prosodyctl register thomas auth.hangout.lifewithtech.net PASSWORD
This seems not to work unless I have an @ symbol in their

admins = { [email protected] }
*************Should this be [email protected] or just [email protected]

Component "focus.jitsi.exmaple.com"
*************Should this be “focus.hangout.lifewithtech.net” or “thomas.hangout.lifewithtech.net”
component_secret="focus_secret"

You can see I got a bit confused and decided to go back to defaults in order to limit and evaluate the other issues I was having like port fowarding and subdomains and it has gone full circle.

@paweldomas
Copy link
Member

Hey,

configuration(etc\prosody\prosody.cfg.lua):

VirtualHost "auth.hangout.lifewithtech.net"
authentication = "internal_plain"

sudo prosodyctl register [email protected] focuspassword

admins = { [email protected] }

Component "focus.hangout.lifewithtech.net"
component_secret="focus_secret"

Hope this helps !

@tfraley
Copy link
Author

tfraley commented May 13, 2015

@paweldomas

Thank you for helping out with this.

I made the changes in the config

When running

sudo prosodyctl register [email protected] focuspassword

I put in a new password, then retype password
Then it gives me an error "The given username is invalid in a Jabber ID"

Terminal output.

thomasfraley@hangout:$ sudo prosodyctl register [email protected] focuspassword
[sudo] password for thomasfraley:
Enter new password:
Retype new password:
The given username is invalid in a Jabber ID
thomasfraley@hangout:
$

@paweldomas
Copy link
Member

Sorry it should be:

sudo prosodyctl register focus auth.hangout.lifewithtech.net focuspassword

You can also check prosodyctl help and see what are other options for adding user and modifying passwords.

@tfraley
Copy link
Author

tfraley commented May 13, 2015

@paweldomas @ibeardslee

Ok, so here is the new tail output. ScreenSharing still not working.. Reciving the same error in chrome "Failed to install desktop sharing extension"

FYI:I do have my extention in the googlechrome store as well
https://chrome.google.com/webstore/search/lifewithtech?hl=en-US

thomasfraley@hangout:~$ sudo su
root@hangout:/home/thomasfraley# tail -f /var/log/nginx/error.log /var/log/jitsi/jicofo.log
==> /var/log/nginx/error.log <==

==> /var/log/jitsi/jicofo.log <==
net.java.sip.communicator.service.protocol.OperationFailedException: Failed to connect
at org.jitsi.impl.protocol.xmpp.XmppProtocolProvider.register(XmppProtocolProvider.java:161)
at org.jitsi.jicofo.util.RegisterThread.run(RegisterThread.java:38)
Caused by: No response from the server.:
at org.jivesoftware.smack.NonSASLAuthentication.authenticate(NonSASLAuthentication.java:73)
at org.jivesoftware.smack.XMPPConnection.login(XMPPConnection.java:217)
at org.jitsi.impl.protocol.xmpp.XmppProtocolProvider.register(XmppProtocolProvider.java:156)
... 1 more
2015-04-13 09:12:00.577 INFO: [18] org.jitsi.impl.protocol.xmpp.XmppProtocolProvider.info() XMPP provider Jabber:[email protected]/focus751912729576831@localhost disconnected
2015-04-13 09:12:00.578 INFO: [18] org.jitsi.jicofo.FocusManager.conferenceEnded().277 Disposed conference for room: [email protected] conference count: 0
2015-04-13 09:14:21.322 INFO: [297] org.jitsi.jicofo.xmpp.FocusComponent.handleConferenceIq().370 Focus request for room: [email protected]
2015-04-13 09:14:21.322 INFO: [297] org.jitsi.jicofo.FocusManager.createConference().231 Created new focus for lifewithtech@conference.hangout.lifewithtech.net@auth.hangout.lifewithtech.net conferences count: 1 options:
channelLastN: -1
adaptiveLastN: false
adaptiveSimulcast: false
bridge: jitsi-videobridge.hangout.lifewithtech.net
openSctp: true
2015-04-13 09:14:21.479 SEVERE: [300] org.jivesoftware.smack.PacketReader.notifyConnectionError() Closes the connection temporary
stream:error (text)
at org.jivesoftware.smack.PacketReader.parsePackets(PacketReader.java:264)
at org.jivesoftware.smack.PacketReader.access$000(PacketReader.java:45)
at org.jivesoftware.smack.PacketReader$1.run(PacketReader.java:74)
2015-04-13 09:14:40.582 INFO: [18] org.jitsi.jicofo.FocusManager.expireLoop().488 Focus idle timeout for [email protected]
2015-04-13 09:14:40.582 INFO: [18] org.jitsi.impl.protocol.xmpp.OperationSetColibriConferenceImpl.expireConference().411 Nothing to expire - no conference allocated yet
2015-04-13 09:14:40.582 SEVERE: [18] org.jitsi.jicofo.JitsiMeetConference.leaveTheRoom().381 Chat room already left!
2015-04-13 09:14:41.325 SEVERE: [298] org.jitsi.jicofo.util.RegisterThread.run().42 net.java.sip.communicator.service.protocol.OperationFailedException: Failed to connect
net.java.sip.communicator.service.protocol.OperationFailedException: Failed to connect
at org.jitsi.impl.protocol.xmpp.XmppProtocolProvider.register(XmppProtocolProvider.java:161)
at org.jitsi.jicofo.util.RegisterThread.run(RegisterThread.java:38)
Caused by: No response from the server.:
at org.jivesoftware.smack.NonSASLAuthentication.authenticate(NonSASLAuthentication.java:73)
at org.jivesoftware.smack.XMPPConnection.login(XMPPConnection.java:217)
at org.jitsi.impl.protocol.xmpp.XmppProtocolProvider.register(XmppProtocolProvider.java:156)
... 1 more
2015-04-13 09:14:41.475 INFO: [18] org.jitsi.impl.protocol.xmpp.XmppProtocolProvider.info() XMPP provider Jabber:[email protected]/focus752073629099147@localhost disconnected
2015-04-13 09:14:41.476 INFO: [18] org.jitsi.jicofo.FocusManager.conferenceEnded().277 Disposed conference for room: [email protected] conference count: 0

@individual-it
Copy link

Hi @tfraley
I have exactly the same problem. Did you find a solution?
I've installed jitsi-meet according to the quick-installation manual: https://github.com/jitsi/jitsi-meet/blob/master/doc/quick-install.md
Jitsi meet works, but the plugin for screen sharing not.
I've tweaked the matches parts of the manifest.json to:

"*://my-local-server/*"

and installed the extension. But no luck
I've tried to install it as package and and to load it as "unpacked extension", no luck with both.
Can be my self-signed SSL certificate be the problem?

@bgrozev
Copy link
Member

bgrozev commented Aug 31, 2015

Did you update config.js in Jitsi Meet with the ID of your extension?

@tfraley
Copy link
Author

tfraley commented Aug 31, 2015

@individual-it
Ultimatly I have up on it, But no I got the extention installed and stuff but never got it to work right. Video and chat worked fine but screensharing with the extention no. It was proably just me other seemed to have it working, I gave up and moved to a hosted service. I felt webrtc isn't there yet maybe when safari starts suporting it I will look back at it

@bibby
Copy link

bibby commented Sep 15, 2015

I got ours working no problem. The last step is to place the extension ID in /etc/jitsi/meet/{domain}-config.js

@hdavy2002
Copy link

Thanks everyone. After reading all the above. I was able to sort my ext too. Note for newbees: Your chrome extension ID is generated when you publish your ext. Once you publish your extension. You can get the ID from the URL. Copy that and then go to /etc/jitsi/meet/{domain}-config.js and paste it

<addr>// Desktop sharing method. Can be set to 'ext', 'webrtc' or false to disable. desktopSharingChromeMethod: 'ext', // The ID of the jidesha extension for Chrome. desktopSharingChromeExtId: 'put your ID here, it looks like hjhskfhsdsdcbsdbkjsdkjdjkjjsd', // The media sources to use when using screen sharing with the Chrome // extension. desktopSharingChromeSources: ['screen', 'window'], // Required version of Chrome extension desktopSharingChromeMinExtVersion: '0.1'<addr>

@hdavy2002
Copy link

Now any tips to get Firefox Extension Published. I generated mine and when I drag the xpi to Firefox, it says 'Ext is corrupted'

@heutger
Copy link

heutger commented Dec 1, 2015

Thanks for this article. However I entered my id by Googles Web Store but it's still not working, the extension is not provided for installation. If I install it manually, desktop sharing works, so it seems, the ID is not recognized. However, I entered it as given and checked it multiple times. I just encountered, there seems to have been an update on the parameter name for the id, for me it's desktopSharingChromeExtId instead of chromeExtensionId as been found on google.

@heutger
Copy link

heutger commented Dec 4, 2015

Thanks to Boris from the dev team, here is the missing hint (BTW my used ID setting is the right one, the other parameter name is outdated): The extension in the Google Web Store needs to be assigned to a verified domain, which must be the verified site running Jitsi Meet (if it should not get indexed, a robots.txt file is required). So using this explanation http://stackoverflow.com/questions/25920728/how-to-specify-verified-site-to-a-chrome-app will finally let the extension be recommended to be installed, if missing and then allows desktop sharing functionality. Ticket can be closed again.

wandhydrant pushed a commit to wandhydrant/jidesha that referenced this issue Jan 2, 2016
wandhydrant pushed a commit to wandhydrant/jidesha that referenced this issue Jan 2, 2016
wandhydrant pushed a commit to wandhydrant/jidesha that referenced this issue Jan 2, 2016
@Ham-Radio
Copy link

Ham-Radio commented May 16, 2016

Could somebody please tell me where I got it wrong? I'm pretty sure I followed all the instructions.
http://imgur.com/qvF8Qlm

I even restarted the server and I also cleared the cookies and cache in my browser.

Thank you!

@bibby
Copy link

bibby commented May 17, 2016

Looks right to me, @Ham-Radio . I remember picking up an extension reloader while working on mine and faced with a similar situation. I also closed all the chromes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

9 participants