Comments (11)
@peterkappelt I have been bashing my head against this problem for the past couple of hours. I have a self-hosted instance of it running on docker. I folllowed the documention very closely. I am not sure what I am missing.
I am fairly certain there is a bug some where. The form that is rendered for linking account has no client_id value nor it has any other values. its completely empty.
<form class="form-horizontal" method="POST" accept-charset="UTF-8" action="http://192.168.1.107:8888/gapi/auth">
<input type="hidden" name="_token" value="0qRLql8b2EqPjDeWOSffUh0xfoH3si9PPoYiPl4d">
<input type="hidden" name="client_id" value="">
<input type="hidden" name="response_type" value="">
<input type="hidden" name="redirect_uri" value="">
<input type="hidden" name="state" value="">
<div class="card-content black-text">
<p><span class="card-title">Link Accounts</span></p>
<b>Hi [email protected]!</b>
<p>Click the button below to link your gBridge account to Google.</p>
</div>
<div class="card-action">
<button style="width: 100%;" class="btn waves-effect blue" type="submit">
<i class="material-icons left">navigate_next</i>Confirm Linking
</button>
</div>
</form>
I am hosting it on 192.168.1.107:8888, I even tried hacking the values in but eventually it complains about invalid RedirectURI and rightly so. Since I have a FQDN configured within app settings on Google.
I even tried removing all security barriers put by mod_proxy. Exposing the entire gBridge to the internet. But then, authentication stops working.
Lastly, I cant even see the project I have registered within Google Actions. Do I have to complete the entire process of deploying to production before I see it? Even that part of Google Actions is broken.
GoogleFulfillment 'GoogleFulfillmentName{name=actions.fulfillment.devices, template=false, explicitTemplateProject=false}' is not supported
Here is my docker compose file.
version: '3'
networks:
backend:
driver: bridge
web_frontend:
driver: bridge
services:
web:
image: 'pkap/gbridge-web:latest'
restart: always
ports:
- '8888:80'
environment:
APP_ENV: production
APP_KEY: 'base64:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx='
APP_DEBUG: 'false'
APP_LOG_LEVEL: warning
APP_URL: 'http://localhost'
DB_CONNECTION: mysql
DB_HOST: database
DB_PORT: 3306
DB_DATABASE: gbridge_db
DB_USERNAME: gbridge_db
DB_PASSWORD: xxxxxxxx
BROADCAST_DRIVER: log
CACHE_DRIVER: file
SESSION_DRIVER: file
SESSION_LIFETIME: 120
QUEUE_DRIVER: sync
REDIS_HOST: cache
REDIS_PASSWORD: 'null'
REDIS_PORT: '6379'
MAIL_DRIVER: smtp
MAIL_HOST: ERROR
MAIL_PORT: ERROR
MAIL_USERNAME: ERROR
MAIL_PASSWORD: ERROR
MAIL_ENCRYPTION: ERROR
GOOGLE_CLIENTID: adc80562f8xxxxxxxxxxxxxx0a6551
GOOGLE_PROJECTID: 'shoaib-s-home-control'
links:
- database
- cache
depends_on:
- database
- cache
networks:
- web_frontend
- backend
redis-worker:
image: 'pkap/gbridge-redis-worker:latest'
restart: always
environment:
GBRIDGE_REDISWORKER_REDIS: 'redis://cache:6379'
GBRIDGE_REDISWORKER_MQTT: 'mqtt://localhost:1883'
GBRIDGE_REDISWORKER_MQTTUSER: shoaib
GBRIDGE_REDISWORKER_MQTTPASSWORD: xxxxxxxx
GBRIDGE_REDISWORKER_HOMEGRAPHKEY: AIzaSyAm1byUyxxxxxxxxxxxxx0N7RTcfVJdsI
networks:
- backend
links:
- cache
depends_on:
- cache
database:
image: 'mysql:5'
restart: always
environment:
MYSQL_RANDOM_ROOT_PASSWORD: 'true'
MYSQL_DATABASE: gbridge_db
MYSQL_USER: gbridge_db
MYSQL_PASSWORD: nxxxxxja1xx
expose:
- '3306'
networks:
- backend
cache:
image: 'redis:4'
restart: always
expose:
- '6379'
networks:
- backend
from gbridge.
The proxy issue will be solved with the update on saturday.
This seems like a different issue. First a simple thing, to make sure there is no misunterstanding: Could you read #26 ? Are you linking the account as described there?
from gbridge.
thank you for the assistance @peterkappelt . I mis-read the docs and thought you linked it from web page, my apologies.
I have now used the home app and selected my [test] app and tried linking, not getting any errors on web page but when I press 'link account', details in the email and password boxes clear and nothing else happens. Checked local bridge web page and no account link shown. I will check my logs to see if anything shows up. I may return the vm to base condition and create new docker-compose after Saturday to remove any possible issues using Sophos as pseudo proxy. I will post any relevant info from logs if found.
from gbridge.
Were you able to resolve the problems? Do you need further assistance?
from gbridge.
I have even tried adding
PROXY_URL: 'https://home.mydomain.com/gbridge'
PROXY_SCHEME: 'https'
The ClientID problem still persists. My apache2 config contains
ProxyPass /gbridge/gapi http://${GBRIDGE_HOST}:${GBRIDGE_PORT}/gapi
ProxyPassReverse /gbridge/gapi http://${GBRIDGE_HOST}:${GBRIDGE_PORT}/gapi
from gbridge.
Same!
I am trying to link through the Google Home app. Entering my information there however, gives this error:
An error occured
The request by Google Home was malformed. Please try again in a few minute. If this problem persists, please contact the team of Kappelt gBridge. Invalid Client ID has been provided!
Like @shoaibali mentions; the source of gapi/auth
indeed shows an empty form field:
<input type="hidden" name="client_id" value="">
I validated that GOOGLE_CLIENTID
and the Client ID
under Account linking in the Google Actions console are the same.
docker-compose up
is successful:
Starting gbridge_cache_1 ... done
Starting gbridge_web-fpm_1 ... done
Starting gbridge_database_1 ... done
Starting gbridge_web_1 ... done
Starting gbridge_redis-worker_1 ... done
MQTT and nginx with ssl certificates are running on the server successfully as well.
from gbridge.
I have same problem
Anybody has solution on this yet?
from gbridge.
I still get this famous "invalid ClientID"
Below is log from docker-compose up
I cannot see anything wrong here... anybody tell me why?
GOOGLE_CLIENTID: [email protected]
GOOGLE_PROJECTID: xxx-xxx
PROXY_URL: 'https://xxx.duckdns.org'
PROXY_SCHEME: 'https'
I can access gbridge website and add device at https://xxx.duckdns.org without any problem.
https://xxx.duckdns.org/gapi shows
{"requestId":"","payload":{"errorCode":"protocolError"}}
https://xxx.duckdns.org/gapi/auth shows
Nice to see you again!
Google is requiring access to your gBridge account. Please confirm the linking.
Link Accounts
Hi [email protected]!
Click the button below to link your gBridge account to Google.
ubuntu@ubuntu:/opt/gbridge$ docker-compose up
Starting gbridge_database_1 ...
Starting gbridge_database_1
Starting gbridge_cache_1 ...
Starting gbridge_cache_1
Starting gbridge_web-fpm_1 ...
Starting gbridge_cache_1 ... done
Starting gbridge_web_1 ...
Starting gbridge_web_1
Starting gbridge_redis-worker_1 ...
Starting gbridge_web_1 ... done
Attaching to gbridge_web-fpm_1, gbridge_database_1, gbridge_cache_1, gbridge_redis-worker_1, g bridge_web_1
web-fpm_1 | [25-Apr-2020 19:21:37] NOTICE: fpm is running, pid 1
cache_1 | 1:C 25 Apr 19:21:42.867 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
cache_1 | 1:C 25 Apr 19:21:42.876 # Redis version=4.0.14, bits=64, commit=00000000, mo dified=0, pid=1, just started
cache_1 | 1:C 25 Apr 19:21:42.876 # Warning: no config file specified, using the defau lt config. In order to specify a config file use redis-server /path/to/redis.conf
web-fpm_1 | [25-Apr-2020 19:21:37] NOTICE: ready to handle connections
database_1 | [i] mysqld already present, skipping creation
cache_1 | 1:M 25 Apr 19:21:42.897 * Running mode=standalone, port=6379.
database_1 | [i] MySQL directory already present, skipping creation
cache_1 | 1:M 25 Apr 19:21:42.897 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
cache_1 | 1:M 25 Apr 19:21:42.897 # Server initialized
cache_1 | 1:M 25 Apr 19:21:42.898 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this t o take effect.
database_1 | 2020-04-25 19:21:39 0 [Note] /usr/bin/mysqld (mysqld 10.4.12-MariaDB) starti ng as process 1 ...
database_1 | 2020-04-25 19:21:41 0 [Note] InnoDB: Using Linux native AIO
database_1 | 2020-04-25 19:21:41 0 [Note] InnoDB: Mutexes and rw_locks use GCC atomic bui ltins
cache_1 | 1:M 25 Apr 19:21:42.900 * DB loaded from disk: 0.001 seconds
cache_1 | 1:M 25 Apr 19:21:42.900 * Ready to accept connections
database_1 | 2020-04-25 19:21:41 0 [Note] InnoDB: Uses event mutexes
database_1 | 2020-04-25 19:21:41 0 [Note] InnoDB: Compressed tables use zlib 1.2.11
database_1 | 2020-04-25 19:21:41 0 [Note] InnoDB: Number of pools: 1
database_1 | 2020-04-25 19:21:41 0 [Note] InnoDB: Using generic crc32 instructions
database_1 | 2020-04-25 19:21:41 0 [Note] mysqld: O_TMPFILE is not supported on /var/tmp (disabling future attempts)
database_1 | 2020-04-25 19:21:41 0 [Note] InnoDB: Initializing buffer pool, total size = 128M, instances = 1, chunk size = 128M
database_1 | 2020-04-25 19:21:41 0 [Note] InnoDB: Completed initialization of buffer pool
database_1 | 2020-04-25 19:21:41 0 [Note] InnoDB: If the mysqld execution user is authori zed, page cleaner thread priority can be changed. See the man page of setpriority().
database_1 | 2020-04-25 19:21:41 0 [Note] InnoDB: 128 out of 128 rollback segments are ac tive.
database_1 | 2020-04-25 19:21:41 0 [Note] InnoDB: Creating shared tablespace for temporar y tables
database_1 | 2020-04-25 19:21:41 0 [Note] InnoDB: Setting file './ibtmp1' size to 12 MB. Physically writing the file full; Please wait ...
database_1 | 2020-04-25 19:21:41 0 [Note] InnoDB: File './ibtmp1' size is now 12 MB.
database_1 | 2020-04-25 19:21:41 0 [Note] InnoDB: Waiting for purge to start
database_1 | 2020-04-25 19:21:41 0 [Note] InnoDB: 10.4.12 started; log sequence number 32 9987; transaction id 575
database_1 | 2020-04-25 19:21:41 0 [Note] InnoDB: Loading buffer pool(s) from /var/lib/my sql/ib_buffer_pool
database_1 | 2020-04-25 19:21:41 0 [Note] Plugin 'FEEDBACK' is disabled.
database_1 | 2020-04-25 19:21:42 0 [Note] Server socket created on IP: '::'.
database_1 | 2020-04-25 19:21:42 0 [Warning] 'user' entry '@3d2acaed4198' ignored in --sk ip-name-resolve mode.
database_1 | 2020-04-25 19:21:42 0 [Warning] 'proxies_priv' entry '@% root@3d2acaed4198' ignored in --skip-name-resolve mode.
database_1 | 2020-04-25 19:21:42 0 [Note] InnoDB: Buffer pool(s) load completed at 200425 19:21:42
database_1 | 2020-04-25 19:21:42 0 [Note] Reading of all Master_info entries succeeded
database_1 | 2020-04-25 19:21:42 0 [Note] Added new Master_info '' to hash table
database_1 | 2020-04-25 19:21:42 0 [Note] /usr/bin/mysqld: ready for connections.
database_1 | Version: '10.4.12-MariaDB' socket: '/run/mysqld/mysqld.sock' port: 3306 M ariaDB Server
redis-worker_1 |
redis-worker_1 | > [email protected] start /usr/src/gbridge-redis-worker
redis-worker_1 | > node index.js
redis-worker_1 |
redis-worker_1 | Redis client (subscribe) connected
redis-worker_1 | Redis client (cache) connected
redis-worker_1 | Redis client (subscribe) successful subscribe to gbridge:u*:d*:*
redis-worker_1 | MQTT client connected
redis-worker_1 | Could not match topic tele/ROUTER/LWT for user 1
redis-worker_1 | Could not match topic tele/PORCH/LWT for user 1
redis-worker_1 | Could not match topic tele/GUDANG/LWT for user 1
redis-worker_1 | Could not match topic cmnd/PORCH/POWER for user 1
redis-worker_1 | Could not match topic cmnd/GUDANG/POWER for user 1
redis-worker_1 | Could not match topic stat/PORCH/POWER for user 1
redis-worker_1 | Could not match topic stat/GUDANG/POWER for user 1
redis-worker_1 | Could not match topic tele/PORCH/STATE for user 1
redis-worker_1 | Could not match topic tele/ROUTER/STATE for user 1
redis-worker_1 | Could not match topic tele/GUDANG/STATE for user 1
web_1 | 172.19.0.1 - - [25/Apr/2020:19:23:25 +0000] "GET /gapi/auth HTTP/1.1" 200 5056 "-" "Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1" "24.4.73.62"
web-fpm_1 | 172.19.0.6 - 25/Apr/2020:19:23:23 +0000 "GET /index.php" 200
web_1 | 172.19.0.1 - - [25/Apr/2020:19:23:58 +0000] "POST /gapi/auth HTTP/1.1" 302 3551 "https://xxx.duckdns.org/gapi/auth?response_type=token&[email protected]&redirect_uri=https://oauth-redirect.googleusercontent.com/r/xxx-xxx&state=ABdO3MWiGj2ZxAb4NlzXWiMCDcdF2dCF_SodAiMDm5LE7jAuJl59xpv3pat_hzdKN8-DYFwZPkrEQm2yl4tj-cBC2HptHYhfhGOYQFeIOBBUlEt5O_wu6OMu5tGg9InSg6iD3m5-6rbxa8PEtQblvuIhkBoLDcdM7BcIv16fFO1Kk4IsQB4Uwk-t-6OEhXmBqVYNnydyqSqjbpjH9T4fplFl4LlJwXIs2GwD2lQwM7H5gnXbudGwWFdPdm1x9JRwToadPRKJZ2kQSQVlUsyhLIdtdAOU6vQojopTKixbLp8xVAok2UFBTtch2i7eAdZ6oI45F-sZ75EPLYvqZP1Lb_QHbBLx9WRdJbtUuMUZt6PYR7Ohu1NJOZ_jDmBvY0b08t64E9A4YUhIZC_q0teEhkLaD4CiMxmObc_NGd8NWw9Z-gNugsmWIG7shQFSM653P83QnpF2XzGJlTuRq2tvqIjMj1EvDPTkCu9C11szbL1RJtjtBPDoP2kVIn5PvoY2-GkZxj07k8oMiO2Iv_ObtFTTkbNEypupan4SvdnSkOV5yOaNfn4F8w1X4QkTv3q2X64bFsN7QbsP94CurQjmd6VlppUQqykPtA&user_locale=en-GB" "Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1" "24.4.73.62"
web-fpm_1 | 172.19.0.6 - 25/Apr/2020:19:23:57 +0000 "POST /index.php" 302
web_1 | 172.19.0.1 - - [25/Apr/2020:19:23:59 +0000] "GET /gapi/auth HTTP/1.1" 200 5471 "https://xxx.duckdns.org/gapi/auth?response_type=token&[email protected]&redirect_uri=https://oauth-redirect.googleusercontent.com/r/xxx-xxx&state=ABdO3MWiGj2ZxAb4NlzXWiMCDcdF2dCF_SodAiMDm5LE7jAuJl59xpv3pat_hzdKN8-DYFwZPkrEQm2yl4tj-cBC2HptHYhfhGOYQFeIOBBUlEt5O_wu6OMu5tGg9InSg6iD3m5-6rbxa8PEtQblvuIhkBoLDcdM7BcIv16fFO1Kk4IsQB4Uwk-t-6OEhXmBqVYNnydyqSqjbpjH9T4fplFl4LlJwXIs2GwD2lQwM7H5gnXbudGwWFdPdm1x9JRwToadPRKJZ2kQSQVlUsyhLIdtdAOU6vQojopTKixbLp8xVAok2UFBTtch2i7eAdZ6oI45F-sZ75EPLYvqZP1Lb_QHbBLx9WRdJbtUuMUZt6PYR7Ohu1NJOZ_jDmBvY0b08t64E9A4YUhIZC_q0teEhkLaD4CiMxmObc_NGd8NWw9Z-gNugsmWIG7shQFSM653P83QnpF2XzGJlTuRq2tvqIjMj1EvDPTkCu9C11szbL1RJtjtBPDoP2kVIn5PvoY2-GkZxj07k8oMiO2Iv_ObtFTTkbNEypupan4SvdnSkOV5yOaNfn4F8w1X4QkTv3q2X64bFsN7QbsP94CurQjmd6VlppUQqykPtA&user_locale=en-GB" "Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1" "24.4.73.62"
web-fpm_1 | 172.19.0.6 - 25/Apr/2020:19:23:58 +0000 "GET /index.php" 200
from gbridge.
same problem here, any suggestions on how to solve?
from gbridge.
I'm not sure if this service is still running, I believe it was shut down beginning 2020: https://about.gbridge.io/notice/
from gbridge.
I'm not sure if this service is still running, I believe it was shut down beginning 2020
as I understand it is possible to host the service, as I believe that most in this issue are trying.
from gbridge.
Related Issues (20)
- this site is down ?
- Mqtt connection via PubSubClient on ESP12/32 fails HOT 1
- Repeating messages (Spam from gbridge) HOT 1
- Fan speed setting causes a page error
- Device mode does not match
- mosquito_sub Connection Refused: not authorised. HOT 23
- Code not up to date
- Self-hosted version tutorial (w/o Docker) HOT 19
- confirmation email yet
- gBridge : status topic is not working.
- Support contact emails? HOT 6
- Turn this service into an open-source community project HOT 3
- Server Down? HOT 10
- Mqtt connection fails after working for a couple of days. HOT 1
- ColorSetting RGB documentation missing
- Cannot seem to have @ symbol in password
- Self-Hosted Linking "Invalid Redirect Request" HOT 2
- Page expired error - Account linking HOT 1
- Google Actions changed from home control to Smart Home HOT 11
- Status Topic Same for all devices
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from gbridge.