Slack slash command to open external URL for google form - google-forms

I have a google form that already integrates a webhook for responses to populate in a certain channel. What I want to do is incorporate a slack slash command to open that form in slack for the users to fill out. Any help or direction is greatly appreciated!
What I have done so far:
implemented the slash command but dont know how to incorporate how to GET the url for the form to show
Have a google script active for the webhook to send responses to the slack channel

It is not possible to directly trigger the opening of an external URL in the browser with a slash command from Slack. I talked with the Slack support team about such a feature some time ago and they had too many security concerns.
But you have other options. Just reply with a message to the slash command and include a direct link to your google form for the user to click on (e.g. <https://www.google.com/|Google>) or show a link button.

Related

Firebase dynamic links have started giving the error "Your connection is not private"

The FDL has been working fine in production for a few weeks and has suddenly started show this error in the browser as if it does not have a valid SSL certificate.
The FDL is generated via the API.
Is there a solution to remove this warning for my FDL?
I have raised a support request with GCP but have posted a question in here in case there is something I can do.
Turns out a received an email from Firebase about this 1 working day ago (before the weekend so I did not notice it).
I followed the instructions and several hours later it was working so I am assuming this was the issue.
Note it did not fix the issue immediately.
We’re writing to let you know that your Firebase Dynamic Links (FDL)
project(s) did not have configuration to prevent phishing, so we
generated Allowlist URLs that your Dynamic Links can redirect to.
Specifying a URL allowlist prevents third parties from using your API
key to create Dynamic Links that redirect from your FDL domain to
sites not on the allowlist.
What do I need to do? Review the generated URLs or to add additional
URLs:
Click 3 dot menu icon> Allowlist URL pattern from the Engage > Dynamic
Links page of the Firebase console for each project. Review the
auto-generated allowlist URLs to ensure they cover your intended link
destinations. [Optional] Specify up to ten regular expressions for
additional allowed URLs using RE2 syntax. See the images below for
clarity.
Only URLs that match one of your configured regular expressions can be
successfully used as a Dynamic Link's deep link or fallback link.
Your impacted project(s):
project1 project2
To learn more, see the Allow specific URL patterns documentation.
Feel free to reach out to our Firebase support team for more
assistance.
This issue I tried to reproduce:
I can able to reproduce if in My device setting time zone if I set date older then 1 month then this error will come.

Capturing HTTP request URL with Google Tag Manager

New guy around here with a really bad workaround scenario:
I'm a digital marketer with no access to my client's CMS.
Their contract developer added Facebook tracking to product pages but forgot to add product ID.
The contractor is currently AWOL so I can't get him to fix this immediately.
I found that some of their HTTP requests contain product ID.
So before we can get it fixed, I'm trying to capture these HTTP requests and save the ID as a query fragment variable by adding an event listener in GTM, and then use GTM (again) to send a proper tracking request.
Is there a piece of sample code that you would recommend?
Thanks,
Dan
Has the developer done the tagging in GTM or has he hardcoded it?
If it's in GTM then update the tags and publish it, if it's hardcoded the best bet is to go and change it.
If you don't have access and it isn't done in GTM then the inadvisable route is trying to monkey patch the facebook tracking script to include the code, not a job for the faint of heart.

How to properly initiate an OAuth flow for Gmail Watch?

I'm trying to initiate Gmail Watch on behalf of my site's users and also get the messages according to what historyId I get on the corresponding PubSub Topic.
I have GCP + Firebase on the backend and Angular 7 in the frontend.
I face two problems here:
Doing this on the frontend seems the right way, with grantOfflineAccess, since it asks nicely on the consent screen for the required Modify scope. However, what I get back is an auth code, and I can't find out how to get access and refresh tokens from it, and use it in the backend Cloud Functions python part.
If I try this on the backend (which works), I have to initiate the flow from python, send the redirect to Angular and pop-up the consent url there. This already seems bad, since the consent screen does not say anything about what you're granting. Then I need a redirect url, which can't be a Cloud Functions url, because I can't whitelist it (can verify the domain), so it is now handled on the Angular side and sent back. Ie. the my oauth redirect is handled in the frontend, which also doesn't seem the right way.
Could you please advise on how to do this properly?
Thanks!

Update Telegram link preview programmatically

I have a bot which creates messages including some urls provided by users.
Telegram creates link previews for those urls. The previews are cached.
Sometimes the content of the url changes, then the preview provided by Telegram is outdated. So I need to update the link preview provided by Telegram.
Telegram link previews can be updated using https://telegram.me/webpagebot. But according to Telegram Bot API, a bot can't talk to another bot to avoid infinite loops. So opening a chat between my bot and webpagebot to request the update is not an option.
How could I force the update of a link preview from my bot? Is there some http request, API, or whatever to do it programmatically?
You may add a randomly generated variable to the end of the link, so Telegram looks a link as a new link, like this:
Suppose a old link is like:
https://example.com/offers/106-tatasky-recharge
If you change og_image, title, meta description of this page, then use the above link as:
https://example.com/offers/106-tatasky-recharge?t=18121980
I think, it solves the problem.

Adding button to Slack Channel Message using Zapier Integration

Does anyone know of a way to add interactive buttons to a slack channel messages that are created using the Zapier slack channel message integration?
David here, from the Zapier Platform team. Sorry to be the bearer of bad news, but that's not currently possible. Because of the way button interactions are handled (centrally, to a single url for all buttons created with Zapier), we haven't come up with a good way for users to add buttons to their messages that would be in any way useful.
We track all feature requests that come in through tickets, so if you'd like to voice your support and get notified if/when this does get implemented, I'd suggest emailing in to contact#zapier.com.
There is a way to add buttons, but you need a premium account. It works by using the Zapier webhook function to send a POST request directly to the Slack API.
You can follow this tutorial to prepare everything in Slack
Then you need to add a custom request step in Zapier:
Screenshot from Zapier
Select method "POST" and paste the URL from your Slack application management tool
Build your Slack message using the Slack Block Kit Builder
Paste the JSON from the Block Kit Builder into the data field in Zapier
Replace text from JSON with dynamic fields from Zapier where necessary
Likely if you want to have buttons, you would want to use them to trigger further Zapier events. For this, follow these steps:
Create new Zap triggered by Webhooks by Zapier
Select "Catch requests"
Copy Request URL
Navigate to your Zapier application management tool and find your app's Interactive Components section
Paste Request URL from Zapier

Resources