Unable to run Echo Bot Google Messaging API. Doesn't reply to "card", "carousel", "chips" strings - gcloud

I just started Google Messaging APIs 3-5 days ago and couldn't figure out what did I go wrong. I already sent/asked this issue to Google's Support page.
Project is under my generic google account. I created a Service Account under this project for info#ourdomain.com and added it as a Project > Editor role. Got this Json keys, uploaded them together with my python Echo Bot files.
Done registering my partner account as well (info#ourdomain.com) and got verified with the Project Number connected that's in my generic google account. I don't know if this is the right setup where my partner account and project ID are from different Google Accounts (info#ourdomain.com and generic#gmail.com, respectively).
Echo bot sample I used: https://github.com/google-business-communications/bm-python-echo-bot/tree/master/full_sample
Logs:

I'm very familiar with programming Google's services but was unaware of Business Messages until I saw your question (it's interesting, thanks).
There are a couple of references to "select the project that you registered for Business Messages".
Often Google enable non-GA|non-public APIs and other functionality (sometimes by injecting service accounts into the project's policy) by having users register Project IDs and Google accounts. I suspect that's what's happening here and the functionality is either blocked or not working entirely by your use of a different Project.
You may be able to gain more insight from the problem by checking logs. IIUC, an App Engine app is deploy and you should be able to gcloud app logs read --project=[[YOUR-PROJECT-ID]] (or gcloud app logs tail --project=[[YOUR-PROJECT-ID]])

Related

Vercel: Task timed out after 10.01 seconds

I recently deployed a Next.js application for a software engineering boot camp. I am using Vercel for hosting the web app. The problem I am having has been spoken about on the internet before. However, I couldn't find much helpful information.
When I look at the real-time logs for my application from my Vercel dashboard, a 504 error gets thrown for multiple API routes I have created. I am aware that Vercel places restrictions on requests depending on the hosting plan someone subscribes to. However, I can't help but wonder if I have overlooked an important step when deploying my application.
When deploying my application, I did the following things:
Connected a session store to my MongoDB database.
Created a password-protected MongoDB Atlas account (credentials are environment variables).
White-listed all IP addresses so that any user can interact with their portion of the database.
I would appreciate help finding out if these errors are my fault and if there is anything I can do about them or if they are solely caused by the restrictions of the "Hobby" plan.
Thank you very much in advance,
-Sam
Screen Shot:
I had a similar issue, turned out, it was just the fact that I did not add the vercel ip addr to the network access page on mongodb so momgodb was blocking vercel from accessing data.
You need to integrate MongoDB in your project on Vercel.
Go to your project settings in Vercel and go to the Integrations tab. Click the Browse Marketplace button and find MongoDb. Click Add Integration button and follow the instructions.
Hope this helps... I know this was asked quite a while ago.
You have to troubleshoot the issue by doing the following
Eliminate the NextJS app out of the equation - Using postman https://www.postman.com/downloads/ - Confirm the output of your API, what is the time the API takes? Given function invocation has a limit, you need to optimize the API to meet the threshold.
If the API times are fine and resolution occurs outside of your app, the next step is to troubleshoot the API route, remove the DB parts and just echo back a success message and check the function invocation time.
If #2 turns out to be the issue, reach out to vercel support - Another option could be hosting it outside and whitelisting the cross domain API ask from your application.

Node-RED Starter not available in IBM Bluemix free account?

I have a client who is unable to provision a Node-RED starter app in Bluemix. The "Create" button is not there and instead there is an "Upgrade" button. I know this was very much available in a free account so wonder if there is a problem with the account?
- I should have said that last week we did the same thing; signed up for Bluemix and provisioned a NodeRED starter in the same way and the button to "Create" the NodeRED starter was there. I am able to provisions the starter in my account as is the person who created an account last week, however when trying in this new account (set up yesterday) they cannot. The pricing for the starter is shows as "free for 30 days or 375Mb)" when you look at it.
The node red starter application is definitely available in the free Bluemix Account. (I just checked it)
Make sure the limits regarding space and number of services are not exceeded (like 1mb and 10 services)
A simple solutions is to use the one-click deploy project from git:
https://github.com/ibmets/node-red-bluemix-starter
Short story... this is a temporary problem, some new accounts are getting created without the 30 limit but with limits on the services instead. Key services will be offered free forever as a basic tier and only when you need extra ooomf will you need to move to a chargeable tier/service. However the NodeRED boilerplate may have been incorrectly assigned as a payable boilerplate in that new pricing structure. The IoT starter that contains similar services IS free in this new pricing plan and can be used for now if you need NodeRED. Should be fixed soon.

Google Analytics Embed API with Server Side Authorization - Firebase Hosting

I completed the basic setup for Google Analytics and inserted the tracking code into my webpage(s). I can log in to analytics.google.com and see historical data just fine.
I have an admin page on my website where I want to display Google Analytics information to several users automatically (no additional logon req'd) and read that this is possible using the Embed API with Server-side Authorization.
I followed the instructions and created a Service Account that shows up under Service account keys in my Google API Manager portal. I also successfully ran 'sudo pip install --upgrade google-api-python-client' on my Cloud9 IDE and pushed the change to my hosting provider, Firebase, i.e. 'firebase deploy'. Lastly, I located and pasted my Analytics View ID in to the code sample provided with the Demo/Setup. My page is served with <!DOCTYPE html> declared.
I can't get it to work. Browser console says:
Uncaught TypeError: window.google.load is not a function
I am thinking that I am not invoking the get_access_token() in that Python module. In other words, I am thinking that server-side scripting is not supported with Firebase hosting.
Anyone know if and how to get Google Analytics Embed API with Server Side Authorization running with Firebase hosting?
This is not exactly a direct answer to your question, but rather an alternative solution to this problem. At least I’m using approach.
You can use Google Design Studio to build and embed amazing analytics and BI dashboards anywhere you like (also on your Admin website). But even easier would be to use Google’s authentication (via gmail) to provide access to select dashboards directly, as Google’s authentication and authorisation is likely more secure that your website’s.

Error 403: Project blocked; abuse detected., accessNotConfigured

I have a golang program running on my local laptop. I had a previous Google Cloud account that I used to upload images to a bucket (using gcloud local context). It worked.
I created another company branded Google Cloud account and linked our company card to it.
Ever since then I get the error in the title.
I contacted support and got this:
Hi,
Unfortunately we are not able to identify any abuse related actions taken on your project. To resolve this issue, please reach out to the Google Cloud Platform community support.
Sincerely,
Google Cloud Platform/API Trust & Safety Team
Do you guys have any ideas? Any help would be much appreciated.
The problem turned out to be that the JWT json file being used by my project for authentication was out-of-date.
I had to re-download a new JWT json file from the cloud console and put it in the root of my project folder.

Can not create bucket "The account for the specified project has been disabled."

I have an old GAE application (in production since 2011) that use Cloud Storage service since it is available in beta. I have not touched this apps for almost 1 year now.
I have to do some administrative task and want to create new buckets in Cloud Storage.
I have activated
- the application in Google Cloud Console
- the billing for this application in Google Cloud Console
I see the Google Cloud Storage tab, when I click on it it is empty, and when I try to create a new bucket I see the error message:
The account for the specified project has been disabled.
How can I fix that?
Why I do not see my existing bucket? (created long time ago using the old Web interface)
Thanks!
This can happen when the Cloud Storage service isn't turned on for your project. Do the following:
Visit http://cloud.google.com/console
Select your project
Visit the APIs & Auth tab
Find Google Cloud Storage in the list of services
Turn on Google Cloud Storage
I was facing the same issue .While every API was enabled after deep diving i realized there is some problem relating to my billing.